Maison >interface Web >js tutoriel >Explication détaillée de la façon d'utiliser l'opérateur à trois points es6

Explication détaillée de la façon d'utiliser l'opérateur à trois points es6

小云云
小云云original
2018-01-24 15:42:413244parcourir

Cet article vous apporte principalement un article sur la façon d'utiliser l'opérateur trois points (explication avec exemples). L'éditeur le trouve plutôt bon, je vais donc le partager avec vous maintenant et le donner comme référence pour tout le monde. Suivons l'éditeur et jetons un œil. J'espère que cela pourra aider tout le monde.

Regardons d'abord un exemple d'utilisation de l'opérateur à trois points sous la spécification es6 :

let fun=function(a,...list){
 console.log(a,list);
};
fun('0','a','b','c');//0 [a,b,c]

Comme vous pouvez le voir ci-dessus, nous pouvons maintenant définir dynamiquement le nombre de paramètres lors de la définition d'un objet fonction. : Le premier paramètre a est un paramètre normal (ignoré),

Vous pouvez voir qu'il y a trois points "..." devant la deuxième liste de paramètres This. La méthode d'écriture a deux utilisations dans la spécification es6

1 .

2. Utilisé comme opérateur de propagation.

● Trois points - comme paramètres :

let fun1=function(...args){
 for(let arg of args){
  console.log(arg);
 };
 console.log(args)
};
fun1('a','b','c');//a b c,[a,b,c]
fun1(1,2);//1 2,[1,2] ...args表示了所有的形参,不管传入多少参数,都可以通过args进行遍历得到,args则集合所有的参数组成参数数组

let fun2=function(arr,...args){
 console.log(arr);
 console.log(args);
};
fun2(1,2,3);//1, [2,3]
fun2(1);//1, []当...args有其他参数时,rest参数args数组集合除去前面参数之后的参数。

let fun3=function(arr1,..args,arr2){
 console.log(args);
}//此时报错!切记,三点作为rest参数的时候,其后不能再有任何参数,只能作为最后一个角色出现!

[x,...y]=[1,2,3];
console.log(y);//[2,3]

[x,...y,z]=[1,2,3];//报错,Rest element must be last element in array

//作为参数,三点运算符可以函数,解构赋值等方面发挥重要作用。‘人如其名',rest表示剩下的,
//它把剩下的任意数量的参数推入数组,所以也继承了数组的方法。rest参数只能出现在最后一位,
//不然会报错,当然以扩展运算的身份出现时另当别论。

● Trois points - utilisés comme opérateurs d'expansion :

let arr=[1,2,3];
console.log(...arr);//1, 2, 3返回数组中的各项

let a=[2,3];
console.log(1,...a,4);//1,2,3,4扩展运算符可以放在中间

let ps=document.querySelectorAll('p');
[...ps];//Array[300],[]可以将ps转为数组解构;
console.log(...ps);//p1,p2....遍历ps各项

let set=new Set([1,2,3,3]);
[...set];//返回数组[1,2,3],可以将set数据结构转化为数组

let map=new Map([[1,'a'],[2,'b'],[3,'c']]);
[...map.keys];//返回[1,2,3],属性数组;
[...map.values];//返回[a,b,c],value数组

[...'wbiokr'];//["w", "b", "i", "o", "k", "r"]遍历字符串,返回各个字符;

let str='abc';
['aaa',...str,'ccc'];//[aaa, a, b, c, ccc]扩展运算符位置比较任性

//三点的扩展运算符,把数组或者类数组对象展开成一系列逗号隔开的值序列,它好比rest参数时候的逆运算。

Recommandations associées :

Comment utiliser l'opérateur à trois points

Comment utiliser l'opérateur étendu ES6

Résumé des opérateurs en php

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn