JS中的扩展运算符三个点“…”
...
是什么:
...
是ES6中新增的,它可以将数组或字符串在语法层面展开,还可以将对象按照key-value展开。说白了就是把衣服脱了,不管是大括号[ ]还是花括号{ },全部脱掉
// 数组
var num= [1,2,3]
console.log(...num) //1 2 3
//字符串
var arr = [...'hello']
arr // ["h", "e", "l", "l", "o"]
//对象
var people= {name:'xiaozhang',height:190}
console.log({...people}) // {name:'xiaozhang',height:190}
...
的作用:
//数组的复制
var arr1 = ['helloWorld']
var arr2 = [...arr1]
arr2 // ['helloWorld']
//对象的复制
var obj1 = {name:'xiaozhang'}
var obj2 = {...obj1}
obj2 // {name:'xiaozhang'}
//数组的合并
var arr1 = ['helloWorld1']
var arr2 = ['helloWorld2']
var mergeArr = [...arr1,...arr2]
mergeArr // ['helloWorld1','helloWorld2']
// 对象的合并
var obj1 = {name:'xiaozhang'}
var obj2 = {height:190}
var mergeObj = {...obj1,...obj2}
mergeObj // {name: "xiaozhang", height: 190}