陣列的擴充套件
// es5 的寫法
function
f(x, y, z)
var args =[0
,1,2
];f.(
null
, args)
;// es6的寫法
function
f(x, y, z)
let args =[0
,1,2
];f(
...args)
;
array.from方法用於將兩類物件轉為真正的陣列:類似陣列的物件(array-like object)和可遍歷(iterable)的物件(包括 es6 新增的資料結構 set 和 map)
array.of方法用於將一組值,轉換為陣列。
array.of(
3,11,
8)// [3,11,8]
array.of(
3)// [3]
array.of(
3).length // 1
陣列例項的copywithin()方法,在當前陣列內部,將指定位置的成員複製到其他位置(會覆蓋原有成員),然後返回當前陣列。也就是說,使用這個方法,會修改當前陣列。
陣列例項的find方法,用於找出第乙個符合條件的陣列成員。
陣列例項的findindex方法,返回第乙個符合條件的陣列成員的位置,如果所有成員都不符合條件,則返回-1。
fill方法用於空陣列的初始化非常方便。陣列中已有的元素,會被全部抹去。
[
'a',
'b',
'c']
.fill(7
)// [7, 7, 7]
newarray(3
).fill(7
)// [7, 7, 7]
es6 提供三個新的方法——entries(),keys()和values()——用於遍歷陣列。它們都返回乙個遍歷器物件(詳見《iterator》一章),可以用for…of迴圈進行遍歷,唯一的區別是keys()是對鍵名的遍歷、values()是對鍵值的遍歷,entries()是對鍵值對的遍歷。
for
(let index of
['a'
,'b'].
keys()
)// 0
// 1
for(
let elem of
['a'
,'b'].
values()
)// 'a'
// 'b'
for(
let[index, elem]of[
'a',
'b']
.entries()
)// 0 "a"
// 1 "b"
用於將巢狀的陣列「拉平」,變成一維的陣列。該方法返回乙個新陣列,對原資料沒有影響。
[1,
2,[3
,4]]
.flat()
// [1, 2, 3, 4]
陣列的空位指,陣列的某乙個位置沒有任何值。比如,array建構函式返回的陣列都是空位。
0
in[undefined, undefined, undefined]
// true0in
[,,,
]// false
陣列的擴充套件
1.array.from 將類陣列物件轉換為陣列,將iterator介面的類陣列轉換為真正的陣列 它也可以接收乙個 函式,對陣列裡面的每乙個元素進行遍歷 可以用該方法輸出 獲取的dom集的每乙個dom元素的某個屬性或者文字內容 好方法!2.array.of 將一組值轉換為陣列 3.copywithi...
陣列的擴充套件 陣列的空位
陣列的空位指,陣列的某一位置沒有任何值。比如,array建構函式返回的陣列都是空位 array 3 上面的陣列中array返回的是乙個具有三個空位的陣列 注意,空位不是undefined,乙個位置的值等於undefined,依然是有值的。空位是沒有任何值,in運算子可以說明這一點。0 in unde...
06 陣列的擴充套件
1.res 引數和擴充套件運算子 2.array.from 與array 3.陣列例項的 find 和 findindex 4.陣列例項的 fill 5.陣列例項的 entries keys values 6.陣列例項的 includes 7.陣列例項的 flat flatmap rest引數的形式...