[英]Push an empty element into javascript array
如何將空元素推送到現有的 Js 數組,讓我們假設:
var arr = [54,77,21]; var target = [54,77,21,,,,36]; arr.push(); //do not append an empty element into the array. arr.push(); console.log(JSON.stringify(arr)); //output: [54,77,21]
如何附加空元素使“arr”等同於“target”數組?
您可以直接尋址索引。 這將構建一個稀疏數組。
var arr = [54,77,21]; arr[6] = 36; console.log(JSON.stringify(arr));
或者推送undefined
直到你想推送值。 這將返回一個填充數組。
var arr = [54,77,21]; arr.push(undefined); arr.push(undefined); arr.push(undefined); arr.push(36); console.log(JSON.stringify(arr));
通過使用JSON.stringify
,您會得到 undefined 或稀疏項null
,因為JSON只知道null
而不是undefined
。
您可以使用Array#length
:
arr.length++;
您可以隨時設置 length 屬性來截斷數組。 當您通過更改長度屬性來擴展數組時,實際元素的數量會增加; 例如,如果在當前為 2 時將 length 設置為 3,則數組現在包含 3 個元素,這會導致第三個元素成為不可迭代的空槽。
但請注意,JSON 不支持稀疏數組。 即你看不到JSON.stringify
空槽。
var arr = [54,77,21]; arr.length++; arr.length++; arr.length++; arr.push(36); console.log(arr);
(僅供參考:Stack Snippets 似乎不正確支持稀疏數組。您需要在瀏覽器控制台中運行該代碼。)
您可以使用array.prototype.concat()方法。
var arr1 = [1, 2, 3, 4]; var arrtarget = [1, 2, 3, 4, , , , 5, 6]; console.log(arr1); console.log(arrtarget); newArr = arr1.concat([, , , 5,6]); console.log(newArr);
或者,您可以使用Array.Prototype.push()方法作為
arr1.push(undefined);
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.