今回は、ES6 の拡張演算子の詳しい説明と、ES6 の拡張演算子を使用する際の注意点について説明します。以下は実際のケースです。見てみましょう。 //当传入的参数不确定时候;
function a(...arg) {
console.log(arg[0]);
console.log(arg[3]);
}
a(1, 23, 0); //1 undefined
//其实也可以用这种替代; arguments本身是一个函数实参对象;
function a() {
console.log(arguments[0]);
console.log(arguments[3]);
}
a(1, 23, 0) //1 undefined
//可以这么理解: ...arg取得了一个实参对象的每一项的值;并不是那个对象;
再看:
var arr0=["liu","hai"];
var arr1=[...arr0];
arr1.push("hello");
console.log(arr0); //["liu","hai"]
console.log(arr1) //["liu","hai","hello"]
发现并没有共享一份数据;
function test(aa,...args){
console.log(aa);
console.log(args[0]);
console.log(args[1]);
console.log(args.length);
}
test("first",1,2); // first 1 2 2;
以上がES6のスプレッド演算子の詳細説明の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。