Array.of()方法
阿新 • • 發佈:2019-02-14
Array.of()
方法用於將一組值,轉換為陣列。
Array.of(3,11,8)// [3,11,8]
Array.of(3)// [3]
Array.of(3).length // 1
這個方法的主要目的,是彌補陣列建構函式Array()
的不足。因為引數個數的不同,會導致Array()
的行為有差異。
Array()// []
Array(3)// [, , ,]
Array(3,11,8)// [3, 11, 8]
上面程式碼中,Array
方法沒有引數、一個引數、三個引數時,返回結果都不一樣。只有當引數個數不少於 2
個時,Array()
才會返回由引數組成的新陣列。引數個數只有一個時,實際上是指定陣列的長度。
Array.of()
Array()
或new
Array()
,並且不存在由於引數不同而導致的過載。它的行為非常統一。
Array.of()// []
Array.of(undefined)// [undefined]
Array.of(1)// [1]
Array.of(1,2)// [1, 2]
Array.of()
方法總是返回引數值組成的陣列。如果沒有引數,就返回一個空陣列。
Array.of()
方法可以用下面的程式碼模擬實現。
functionArrayOf(){
return[].slice.call(arguments);
}