偽數(shù)組轉(zhuǎn)化為真數(shù)組是一個(gè)常見的操作,可以通過以下幾種方法來實(shí)現(xiàn)。
方法一:使用Array.from()方法
Array.from()方法可以將類數(shù)組對象或可迭代對象轉(zhuǎn)化為真數(shù)組。所謂類數(shù)組對象,指的是具有l(wèi)ength屬性和按照索引訪問元素的對象,比如arguments對象、DOM NodeList對象等。
var pseudoArray = {
0: 'apple',
1: 'banana',
2: 'orange',
length: 3
};
var realArray = Array.from(pseudoArray);
console.log(realArray); // ['apple', 'banana', 'orange']
方法二:使用Array.prototype.slice.call()方法
Array.prototype.slice.call()方法可以將一個(gè)類數(shù)組對象轉(zhuǎn)化為真數(shù)組。該方法利用了Array.prototype.slice()方法的特性,通過調(diào)用該方法并傳入類數(shù)組對象作為this對象,可以將其轉(zhuǎn)化為真數(shù)組。
var pseudoArray = {
0: 'apple',
1: 'banana',
2: 'orange',
length: 3
};
var realArray = Array.prototype.slice.call(pseudoArray);
console.log(realArray); // ['apple', 'banana', 'orange']
方法三:使用擴(kuò)展運(yùn)算符(...)
擴(kuò)展運(yùn)算符(...)可以將一個(gè)可迭代對象展開,從而將其轉(zhuǎn)化為真數(shù)組。
var pseudoArray = {
0: 'apple',
1: 'banana',
2: 'orange',
length: 3
};
var realArray = [...pseudoArray];
console.log(realArray); // ['apple', 'banana', 'orange']
需要注意的是,以上方法都是將類數(shù)組對象轉(zhuǎn)化為真數(shù)組,而不是將偽數(shù)組(如arguments對象)轉(zhuǎn)化為真數(shù)組。如果要將偽數(shù)組轉(zhuǎn)化為真數(shù)組,可以使用方法一或方法二。
希望以上方法可以幫助你實(shí)現(xiàn)偽數(shù)組轉(zhuǎn)化為真數(shù)組的操作。如果還有其他問題,請隨時(shí)提問。
千鋒教育擁有多年IT培訓(xùn)服務(wù)經(jīng)驗(yàn),開設(shè)Java培訓(xùn)、web前端培訓(xùn)、大數(shù)據(jù)培訓(xùn),python培訓(xùn)、軟件測試培訓(xùn)等課程,采用全程面授高品質(zhì)、高體驗(yàn)教學(xué)模式,擁有國內(nèi)一體化教學(xué)管理及學(xué)員服務(wù),想獲取更多IT技術(shù)干貨請關(guān)注千鋒教育IT培訓(xùn)機(jī)構(gòu)官網(wǎng)。