标签:log each push bsp argument nts 解构赋值 call sum
//拓展运算符
//把数组或者类数组展开成用逗号隔开的值
// function foo([a, b, c]) {
// console.log(a, b, c)
// }
// let arr = [1, 2, 3]
// foo(arr)
// function foo(a, b, c) {
// console.log(a, b, c)
// }
// let arr = [1, 2, 3]
// foo(...arr)
// let arr1 = [1, 2, 3]
// let arr2 = [4, 5, 6]
// // es5
// // Array.prototype.push.apply(arr1, arr2)
// // console.log(arr1)
// arr1.push(...arr2)
// console.log(arr1)
//拓展运算符第一个常用的场景 合并数组
// let str = ‘immoc‘
// var arr = [...str]
// console.log(arr)
//rest // 剩余的 剩余参数
//es5 不定参数求和
// function foo(x, y, z) {
// // console.log(arguments)
// let sum = 0
// Array.prototype.forEach.call(arguments, function(item) {
// sum += item
// })
// return sum
// }
// console.log(foo(1, 2))
// console.log(foo(1, 2, 3))
//es6 不定参数求和
// function foo(x, y, z) {
// // console.log(arguments)
// let sum = 0
// Array.from(arguments).forEach(item => {
// sum += item
// })
// return sum
// }
// console.log(foo(1, 2, 3))
// rest 运算符 剩余运算符 不定参数求和
// function foo(...arr) {
// // console.log(arr)
// let sum = 0
// arr.forEach(item => {
// sum += item
// })
// return sum
// }
// console.log(foo(1,2))
// function foo(x, ...arr) {
// console.log(x)
// console.log(arr)
// }
// foo(1, 2, 3)
// rest 运算符在解构赋值中的应用
let [x, ...y] = [1, 2, 3]
console.log(x)
console.log(y)
总结
//...放在等号的左边 和 形参 他就是rest 参数
//...放在等号的右边 和 实参 就是拓展参数
标签:log each push bsp argument nts 解构赋值 call sum
原文地址:https://www.cnblogs.com/hekeying/p/14418320.html