[英]Last iteration in foreach loop with Object Javascript
我有一个像这样的对象。
objName {
item1 : someItem,
item2 : someItem,
item3 : someItem,
}
现在属性的数量是动态的,可以增加未知量,我在这个对象的属性键中执行foreach循环,就像这样。
Object.keys(objName).forEach(itemNumber => {
console.log(itemNumber);
});
我如何检测它的最后一次迭代来执行一项新任务?
您可以使用索引和数组参数来检查是否存在下一个元素。 您还可以检查当前索引是否等于length - 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') });
首先找到对象的长度,如下所示:
var objLength= Object.keys(objName).length;
然后你可以像这样使用:
var count = 0;
Object.keys(objName).forEach(item => {
console.log(item);
count++;
if (count == objLength)
{
console.log("endOfLoop");
}
});
你可以像下面的代码一样将index和value传递给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]);
}
});
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.