私はこのようなオブジェクトを持っています。
objName {
item1 : someItem,
item2 : someItem,
item3 : someItem,
}
これで、プロパティの数は動的になり、不明な量で増加する可能性があります。このように、このオブジェクトのプロパティキーでforeachループを実行しています。
Object.keys(objName).forEach(itemNumber => {
console.log(itemNumber);
});
新しいタスクを実行するために、最後の反復をどのように検出しますか?
インデックスと配列のパラメータを使用して、次の要素があるかどうかを確認できます。現在のインデックスが同じ長さであるかどうかを確認することもできます-1index == 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')
});
以下のコードのように、インデックスと値を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]);
}
});
まず、以下のようにオブジェクトの長さを見つけます。
var objLength= Object.keys(objName).length;
次に、次のように使用できます。
var count = 0;
Object.keys(objName).forEach(item => {
console.log(item);
count++;
if (count == objLength)
{
console.log("endOfLoop");
}
});