Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/375.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/postgresql/10.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何迭代对象javascript中的每个奇数或偶数属性?_Javascript_Javascript Objects - Fatal编程技术网

如何迭代对象javascript中的每个奇数或偶数属性?

如何迭代对象javascript中的每个奇数或偶数属性?,javascript,javascript-objects,Javascript,Javascript Objects,当属性键只是字符串而不是数字时,如何迭代对象中的每个奇数或偶数属性 var object = { odd1: 'a', even2: 'b', odd3: 'c', even4: 'd' }; //编辑:键不重复 首先,不能有两个同名属性。对象属性没有顺序。最新的值将覆盖上一个值 迭代您可以使用的属性,这将返回对象自己的属性。您可以看到对象中只有两个属性 “使用严格的” 变量对象={ 奇数:“a”, 偶数‘b’, 奇数:“c”, 甚至:“d” }; Objec

当属性键只是字符串而不是数字时,如何迭代对象中的每个奇数或偶数属性

var object = {
    odd1: 'a',
    even2: 'b',
    odd3: 'c',
    even4: 'd'
};

//编辑:键不重复

首先,不能有两个同名属性。对象属性没有顺序。最新的值将覆盖上一个值

迭代您可以使用的属性,这将返回对象自己的属性。您可以看到对象中只有两个属性

“使用严格的”
变量对象={
奇数:“a”,
偶数‘b’,
奇数:“c”,
甚至:“d”
};
Object.keys(Object.forEach(prop=>console.log(`${prop}-${Object[prop]}')
迭代对象中的每个奇数或偶数属性,当属性
键只是字符串,不是数字

这实质上是在整个对象上进行迭代。为此,您可以在

var对象={
“1”:“a”,
“2”:“b”,
‘3’:‘c’,
“4”:“d”
};
for(对象中的变量键){
log(对象[键])
}
var对象={
odd1:‘a’,
第二条:“b”,
odd3:‘c’,
第四条:“d”
};
var od=[];var ev=[];
var len=Object.keys(Object.length);
var keys=Object.keys(Object);
对于(变量i=0;i
是否为奇数&“偶数”是键名?对象不能有重复的键这可能对您有所帮助。对象就像字典:键是严格唯一且无序的。实际上您不需要这样,因为对象属性没有任何特定的顺序,它们不能是奇数或偶数。谢谢您的评论。我试图让读者更清楚地了解这一点,并使用奇数和偶数的关键名称,但这误导了问题。所以我在钥匙后面加了数字。我希望它能澄清我的问题。你能解释一下对象中的奇偶顺序吗?对象属性没有任何顺序,它们根本不能被排序为奇偶…“奇偶”是一个顺序。你不能对没有它的问题给出“工作”答案。你在欺骗OP,我教他如何迭代属性。我没有提到属性顺序,它不存在于对象中。因此,如果我的答案不清楚,那么它就没有被标记为正确答案。您可以添加您的答案,而不是在我的答案下面添加注释。如果您的目的是分离偶数和奇数,那么首先您需要将对象的键转换为数组,或者如果您希望将其转换为您也可以执行的值
         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 );