當屬性鍵只是字符串而不是數字時,我怎樣才能迭代對象中的每個奇數或偶數屬性?如何迭代對象javascript中的每個奇數或偶數屬性?
var object = {
odd1: 'a',
even2: 'b',
odd3: 'c',
even4: 'd'
};
//編輯:鑰匙不重複。
當屬性鍵只是字符串而不是數字時,我怎樣才能迭代對象中的每個奇數或偶數屬性?如何迭代對象javascript中的每個奇數或偶數屬性?
var object = {
odd1: 'a',
even2: 'b',
odd3: 'c',
even4: 'd'
};
//編輯:鑰匙不重複。
var object = {
odd1: 'a',
even2: 'b',
odd3: 'c',
even4: 'd'
};
var od = []; var ev = [];
var len = Object.keys(object).length;
var keys = Object.keys(object);
for (var i = 0; i < len; i++) {
if(i%2 === 0){
ev.push(keys[i]);
}
else {
od.push(keys[i]);
}
}
alert("odd values are: "+od+" and even values are: "+ev);
如果你的目的是分離偶數和奇數值,那麼首先你需要將對象的關鍵字轉換成一個數組,或者如果你需要它的值,你也可以做 – anitab
所以首先,你不能有兩個同名的屬性。對象屬性沒有順序。最新的一個將覆蓋以前的值。
要遍歷屬性,您可以使用Object#keys,它將返回對象的自己的屬性。你可以看到對象中只有2個屬性。
"use strict"
var object = {
odd: 'a',
even: 'b',
odd: 'c',
even: 'd'
};
Object.keys(object).forEach(prop => console.log(`${prop} - ${object[prop]}`));
迭代從對象中的所有奇數或偶數的屬性,當屬性 按鍵僅字符串,而不是數字?
這基本上是迭代整個對象。對於您可以使用for ..in
var object = {
'1': 'a',
'2': 'b',
'3': 'c',
'4': 'd'
};
for (var keys in object) {
console.log(object[keys])
}
是'odd'&「even'是關鍵的名字嗎?一個對象不能有重複鍵 – brk
這可能是ü幫助。 https://stackoverflow.com/questions/8119941/split-an-array-into-two-arrays-based-on-odd-even-position –
對象就像詞典:鍵是嚴格獨特和無序的。 –