Plusieurs méthodes pour changer les données en tableau

Plusieurs méthodes pour changer les données en tableau


id méthode scènes à utiliser
1 Array.from() 1. Objets de type tableau 2. Objets traversables
2 Opérateur de propagation... 1. Obtenez l' argumentsobjet de paramètre de la fonction 2. NodeList obtenu par l'opération Dom
3 split('') 1. Divisez la chaîne en un tableau
4 Array.of() 1. Convertissez un ensemble de valeurs en un tableau

1. Méthode Array.from () (méthode en es6)

  • Scénario d'utilisation: cette méthode ne peut convertir que des objets de type tableau et des objets traversables en tableaux.
  • eg1: objets de type tableau (y compris l'objet arguments à l'intérieur de la fonction et la liste de nœuds renvoyée par Dom)
//  这里的对象得有伪索引,数组长度
let arr = {
    
    
  0: 'a',
  1: 'b',
  length: 2
}

a = Array.from(arr)
console.log(a) // [ 'a', 'b' ]
  • eg2: objets traversables
//  字符串部署了Iterator接口,可遍历
let arr = Array.from('hello')
console.log(arr)// [ 'h', 'e', 'l', 'l', 'o' ]

2. Opérateur de propagation...

  • Scénario d'utilisation: 1) NodeList retourné par l'opération Dom.2) Argumentation objet de la fonction.
  • eg1: opération Dom
//  获取所有的P标签
let a = document.querySelectorAll('p');
//  将p标签转换成数组,并过滤到p中文字长度小于等于100的标签
a = Array.from(a).filter(n => n.textContent.length > 100) // (4) [p, p, p, p]

-eg2: l'objet arguments de la fonction

//  
function foo() {
    
    
  return [...arguments]
}
console.log(foo(1, 2, 3, 4, 5, 6)) //[ 1, 2, 3, 4, 5, 6 ]

3. Méthode Split ('')

  • Scénario d'utilisation: convertir une chaîne en tableau
  • eg1:
let arr = Array.from('hello')
console.log(arr) // [ 'h', 'e', 'l', 'l', 'o' ]

4. Méthode Array.of () (es6)

  • Scénario d'utilisation: convertir un ensemble de valeurs en un tableau
  • Cette méthode permet de compenser les lacunes de Array (), car ce n'est que lorsque la longueur du paramètre de Array () dépasse deux, qu'elle retournera un tableau, sinon elle ne spécifiera que la longueur du tableau.
  • eg1:
//  只有一个参数时也会返回新的数组,Array()不会.
let arr = Array.of(1)
console.log(arr);

//  返回新的数组
let arr = Array.of(1, 2, 3, 4, 5)
console.log(arr);// [ 1, 2, 3, 4, 5 ]

Je suppose que tu aimes

Origine blog.csdn.net/weixin_40944062/article/details/105045204
conseillé
Classement