当属性键只是字符串而不是数字时,我怎样才能迭代对象中的每个奇数或偶数属性?如何迭代对象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 –
对象就像词典:键是严格独特和无序的。 –