我有一个这样的对象。
objName {
item1 : someItem,
item2 : someItem,
item3 : someItem,
}
现在属性的数量是动态的,并且可以增加未知数量,我正在像这样在此对象的属性键中执行 foreach 循环。
Object.keys(objName).forEach(itemNumber => {
console.log(itemNumber);
});
我该如何检测它的最后一次迭代以执行新任务?
答案 0 :(得分:6)
您可以使用索引和数组参数来检查是否存在下一个元素。您还可以检查当前索引是否等于长度-1 index == arr.length - 1
let objName = {
item1 : "someItem",
item2 : "someItem",
item3 : "someItem",
}
Object.keys(objName).forEach((item, index, arr) => {
console.log(item);
if(!arr[index + 1]) console.log('End')
});
答案 1 :(得分:1)
首先找到对象的长度,如下所示:
gateway
然后您可以像这样使用
:var objLength= Object.keys(objName).length;
答案 2 :(得分:1)
您可以像下面的代码一样将索引和值传递给forEach函数,并使用Object.keys(objName).length来获取对象长度,然后是最后一个成员objName [value]
var objName = {
item1 : "someItem",
item2 : "someItem",
item3 : "someItem3",
}
Object.keys(objName).forEach((value, index) => {
if(index==Object.keys(objName).length-1){
console.log(objName[value]);
}
});