我正在使用Web的React&Firebase数据库。
在下面的代码中,dbRef
指向包含字符串数组的Firebase数据库树。此数组的某些元素已被删除,这导致空索引。
[
"0": "first",
"1": "next",
"6": "skipped indexes 2 - 5"
]
我目前正在做:
dbRef.set([...currentList, newItem])
但是,我想确保传递给
set
的数组没有任何null
索引。在JS中执行此操作的最佳方法是什么? (如果有问题,我正在使用Babel) 最佳答案
您可以过滤掉不再存在的条目:
// In ES2015+
theArray = theArray.filter((_, index) => theArray.hasOwnProperty(index));
// In ES5 and earlier
theArray = theArray.filter(function(_, index) { return theArray.hasOwnProperty(index); });
例:
var theArray = ['a', 'b', 'c', 'd'];
delete theArray[2];
console.log("before", JSON.stringify(theArray));
theArray = theArray.filter((_, index) => theArray.hasOwnProperty(index));
console.log("after", JSON.stringify(theArray));
关于javascript - 如何在JavaScript数组中重置数组索引,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/42304161/