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