JavaScript では、複数のドット「...」は、ES6 で新しく追加された機能であるスプレッド演算子を参照します。配列式を変換したり、文字列を構文レベルで展開したりできます。オブジェクト式も変換できます。リテラル オブジェクトを構築するときに「キーと値」方式で展開されます。
このチュートリアルの動作環境: Windows 7 システム、ECMAScript バージョン 6、Dell G3 コンピューター。
JavaScript では、3 つのドット (...) は実際にはスプレッド演算子と呼ばれ、ES6 で新たに追加されました。関数呼び出し/配列構築に配列式または文字列を追加できます。構文レベル。リテラル オブジェクトを構築するときに、キーと値の方法でオブジェクト式を展開することもできます。
リテラルは通常 [1,2,3] または {name:'chuichui' } を参照しますこの簡潔な構築方法では、多層ネストされた配列とオブジェクトの 3 点は無力です。
はっきり言って、中括弧 ([]) であろうと、中括弧であろうと、服を脱ぐことを意味します。中かっこ ({}) は気にしないでください。 すべて外してください。
// 数组 var number = [1,2,3,4,5,6] console.log(...number) //1 2 3 4 5 6 //对象 var man = {name:'chuichui',height:176} console.log({...man}) / {name:'chuichui',height:176}
その用途は非常に幅広く、どこでも見ることができます。一般的な例をいくつか示します。
//数组的复制 var arr1 = ['hello'] var arr2 =[...arr1] arr2 // ['hello'] //对象的复制 var obj1 = {name:'chuichui'} var obj2 ={...arr} ob12 // {name:'chuichui'}
//数组的合并 var arr1 = ['hello'] var arr2 =['chuichui'] var mergeArr = [...arr1,...arr2] mergeArr // ['hello','chuichui'] // 对象分合并 var obj1 = {name:'chuichui'} var obj2 = {height:176} var mergeObj = {...obj1,...obj2} mergeObj // {name: "chuichui", height: 176}
var arr1 = [...'hello'] arr1 // ["h", "e", "l", "l", "o"]
通常の関数と組み合わせて柔軟に使用できます
function f(v,w,x,y,z){ } var args = [2,3] f(1,...args,4,...[5])
必要なときに使用します配列を使用するには、要素が関数のパラメーターとして反復処理されるときに使用します。
function f(x,y,z){} var args = [1,2,3] f(...args) // 以前的方法 f.apply(null,args);
[推奨学習: JavaScript 上級チュートリアル]
以上がJavaScript で複数のドットは何を意味しますか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。