ES6 ... 展开&收集运算符】的更多相关文章

...展开&收集运算符,也就是说他可以干两件事情,展开和收集 一:收集,顾名思义把散列东西收集到一个地方,这个地方ES6规定收集在数组中 例如:下面函数fn将传递的参数收集在arg变量中,打印arg是一个数组,里面包含着传来的参数.就像吃豆子一样把值收到自己的嘴里. function fn(...arg){ console.log(arg); //[1,2,3] } fn(1,2,3) 上面的代码让我们想起来arguments,也是保存着传过来的参数.但是我们知道arguments对象是类数组,…
本文原载于 SegmentFault 社区 专栏:大前端  作者:皮小蛋 背景 ... 运算符,是 ES6 里一个新引入的运算法,也叫 展开/收集 运算符,我们每天都要和它打交道. 这篇文章,我就带你系统的回顾下这个运算符,介绍一些基础和进阶的用法. 基础篇 先看一下官方描述: Spread syntax allows an iterable, such as an array expression or string, to be expanded in places where 0 or m…
定义: .展开运算符允许一个表达式在某处展开. 使用场景 1.展开函数在多个参数的地方使用 .意指用于函数传参 2.多个元素的地方使用,意指用于数组字面量 3.多个边框的地方使用,意指用于解构赋值 函数调用中使用展开运算符 之前实现方式 function test(a, b, c) { return a + b +c; } var args = [0, 1, 2]; test.apply(null, args);//3 如上,我们把args数组当作实参传递给了a,b,c,这边正是利用了Funct…
ES6的扩展运算符可以说是非常使用的,在给多参数函数传参,替代Apply,合并数组,和解构配合进行赋值方面提供了很好的便利性. 扩展运算符就是三个点“...”,就是将实现了Iterator 接口的对象中的每个元素都一个个的迭代并取出来变成单独的被使用. 看这个例子: console.log(...[3, 4, 5]) 结果: 3 4 5 调用其实就是: console.log(3, 4, 5) 合并数组 可以使用扩展运算符将多个数组进行合并. let arr1 = [1, 2, 3] let a…
语法 用于函数调用 myFunction(...iterableObj); 用于数组字面量 [...iterableObj, 4, 5, 6] 函数传参 目前为止,我们都是使用Function.prototype.apply方法来将一个数组展开成多个参数: function myFunction(x, y, z) { } var args = [0, 1, 2]; myFunction.apply(null, args); 使用es6的展开运算符可以这么写: function myFunctio…
数组的展开合并 现在有两个数组[1, 2, 3, 4]和[5, 6, 7],想要将两个函数拼接成一个新的函数. //es5的写法 let arr1 = [1, 2, 3, 4]; let arr2 = [5, 6, 7]; let arr = arr1.concat(arr2); console.log(arr)//[ 1, 2, 3, 4, 5, 6, 7 ] //es6的写法 let arr = [...arr1, ...arr2]; console.log(arr)//[ 1, 2, 3,…
展开运算符的用法1:传参 // 展开运算符的用法1 : 传参 function test(a,b) { return a + b ; } var arr = [1,2]; console.log(test(...arr)); // 3 参数不确定时 function test(...m) { var s = 0 for(var i of m){ s = s + i; console.log(i); // 1,6,3 } return s ; } console.log(test(1,6,3));…
展开运算符,目前应用在数组上,对象展开运算符,将在es7 提案 1.两个对象连接返回新的对象   let a = {aa:'aa'} let b = {bb:'bb'} let c = {...a,...b} console.log(c) // {"aa":"aa","bb":"bb"} 2.两个数组连接返回新的数组   let d = ['dd'] let e = ['ee'] let f = [...d,...e] con…
数组字面量中使用展开运算符 我们可以这样合并数组: var arr1=['a','b','c']; var arr2=[...arr1,'d','e']; //['a','b','c','d','e'] 展开运算符也可以用在push函数中,可以不用再用apply()函数来合并两个数组: var arr1=['a','b','c']; var arr2=['d','e']; arr1.push(...arr2); //['a','b','c','d','e'] 用于解构赋值 let [arg1,a…
1.数组中使用let defaultColors = ['red', 'greed'] let favoriteColors = ['orange', 'yellow'] let fallColors = ['pink', 'blue'] ES5 defaultColors.concat(favoriteColors) ES6 [...defaultColors , ...favoriteColors ] ES5 defaultColors.concat(favoriteColors) defa…