...的用法
展开操作符...
数组
const a = [1, 2, 3], b = [4,5,6]; const c = [...a] // [1,2,3] const d = [...a,...b] // [1,2,3,4,5,6] const d = [...a,4, 5, 6] // [1,2,3,4,5,6] const a = [1,2,3]; a.push(...b);//a被改变 var list=document.getElementsByTagName('a'); var arr=[..list]; //类数组对象变成数组
对象
同数组
字符串
const hey = 'hey' const arrayized = [...hey] // ['h', 'e', 'y']
剩余操作符(rest参数)
参数个数不确定
function sum(a,b,...args){ //其中第一个形参a对应的是1,第二个形参b对应的2,…args表示的就是[3, 4, 5]。 console.log(args.length); // 传进来的参数的个数 3 let s = a + b; if(args && args.length){ args.forEach(i => {s += i}); } return s; } sum(1, 2, 3, 4, 5 ); // 传进来的参数的个数 3
解构赋值
含义:从数组和对象中提取值,对变量进行赋值
let {a,b,c} = {a:1,b:2,c:3}; // a 1, b 2, c 3
let [a,b,c] = [1,2,3]; // a 1, b 2, c 3
let array = [1,2,3,4,5]; let [a,b,...c] = array; // a 1,b 2, c [3,4,5]