一、array.of方法
JavaScript中Array對象是一個全局對象,可在所有位置進行調用。Array.of()方法創建一個具有可變數量參數的新數組實例。該方法有點類似於Array構造函數,但是Array的參數個數是確定的,而Array.of()的參數個數是可變的。
// Array.of方法示例 console.log(Array.of(1, 2, 3)); // [1, 2, 3] console.log(Array.of("a", "b", "c")); // ["a", "b", "c"] console.log(Array.of(3)); // [3] console.log(Array.of(undefined)); // [undefined]
我們可以發現,Array.of()方法可以接受任意數量的參數,並將它們全部放入一個新的數組對象中返回。
二、array.of的作用
在JavaScript開發中,我們常常需要創建一個新的數組。而Array.of()方法的作用就是為我們提供了一種簡便的方法來創建新的數組實例,並且可以自由地添加任意數量的參數。
相較於Array構造函數,Array.of()方法可以避免由於參數數量和類型不同帶來的問題,如下面的代碼示例所示:
// Array構造函數示例 console.log(Array(1, 2, 3)); // [1, 2, 3] console.log(Array("a", "b", "c")); // ["a", "b", "c"] console.log(Array(3)); // [ , , ] console.log(Array(undefined)); // [undefined]
我們可以發現,Array構造函數對於不同的參數個數、類型會產生不同的結果,並且在不傳遞參數時,會自動創建一個長度為0的數組。
三、array.of和from
在ES6之前,我們通常使用Array對象的原型方法from()來創建新的數組實例。那麼,array.of和from有何區別呢?
首先,如果我們只需要一個新的數組實例,在語法上使用from和of的差別並不大。但是,傳遞單一參數給from方法會構建一個只有單一參數的數組,而我們希望得到一個只有一個元素的數組。這也是使用of方法的主要原因。
// Array.from方法示例 console.log(Array.from("hello")); // ["h", "e", "l", "l", "o"] console.log(Array.from([1, 2, 3], x => x + x)); // [2, 4, 6] console.log(Array.from({ length: 3 }, (_, i) => i)); // [0, 1, 2] // Array.of方法示例 console.log(Array.of(2)); console.log(Array.of(2, 3)); console.log(Array.of(2, "hello", { length: 2 }));
我們可以發現,使用Array.from方法和Array.of方法都可以完成創建數組的任務,但是from方法的參數必須是一個類似數組或者可迭代對象,而of方法則不需要,只需要傳遞任意數量的參數即可。
四、array.of方法的作用
我們可以發現,array.of方法可以完成以下任務:
- 創建一個新的數組實例
- 任意數量的參數都能夠被添加到新數組中
- 避免由於參數數量和類型不同帶來的問題
- 可以單獨使用,不需要一個類似數組或者可迭代對象
文章結束啦!希望本文可以對你學習Array.of方法有所幫助。
原創文章,作者:小藍,如若轉載,請註明出處:https://www.506064.com/zh-hant/n/197412.html