在javascript中迭代对象数组

时间:2013-04-26 10:39:18

标签: javascript jquery

我有一个数组,其中包含带有键的对象,值我们如何迭代casteid的每个对象。

[
    Object {
        caste = "Banda",
        id = 4
    },
    Object {
        caste = "Bestha", 
        id = 6
    }
]

9 个答案:

答案 0 :(得分:30)

使用jQuery.each()

var array = [
   {caste: "Banda", id: 4},
   {caste: "Bestha", id: 6}
];
    
$.each(array, function( key, value ) {
  console.log('caste: ' + value.caste + ' | id: ' +value.id);
}

);
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>

答案 1 :(得分:12)

示例代码:

var list = [
    { caste:"Banda",id:4},
    { caste:"Bestha",id:6},
];
    
for (var i=0; i<list.length; i++) {
    console.log(list[i].caste);
}

它只是一个数组,所以,一如既往地迭代它。

答案 2 :(得分:7)

在纯JavaScript中,你可以这样做:

var array = [{caste: "Banda", id: 4}, {caste: "Bestha", id:6}];

array.forEach(function(element, index) {
    console.log(element.id+" "+element.caste);
});

使用第三个参数调用回调函数,即遍历的数组。 学习more

因此,您不需要加载jQuery库。

问候。

答案 3 :(得分:4)

var array = [{caste: "Banda", id: 4}, {caste: "Bestha", id:6}];
var length = array.length;
for (var i = 0; i < length; i++) {
   var obj = array[i];
   var id = obj.id;
   var caste = obj.caste;
}

答案 4 :(得分:3)

如今,箭头功能是现代的

使用jquery $ .each和箭头功能

 var array = [
    {caste: "Banda", id: 4},
    {caste: "Bestha", id: 6}
 ];

 $.each(array, ( key, value ) => {
     console.log('caste: ' + value.caste + ' | id: ' +value.id);
 });

将forEach与箭头功能配合使用

  array.forEach((item, index) => {
      console.log('caste: ' + item.caste + ' | id: ' +item.id);
  });

使用带有箭头功能的地图。这里地图返回一个新数组

  array.map((item, index) => {
      console.log('caste: ' + item.caste + ' | id: ' +item.id);
  });

答案 5 :(得分:2)

forEach循环接受迭代器函数,并且可选地,在调用迭代器函数时接受一个用作“this”的值。

 var donuts = [
    { type: "Jelly", cost: 1.22 },
    { type: "Chocolate", cost: 2.45 },
    { type: "Cider", cost: 1.59 },
    { type: "Boston Cream", cost: 5.99 }
];

donuts.forEach(function(theDonut, index) {
    console.log(theDonut.type + " donuts cost $"+ theDonut.cost+ " each");
});

随后它也可以分解为

var donuts = [
  { type: "Jelly", cost: 1.22 },
  { type: "Chocolate", cost: 2.45 },
  { type: "Cider", cost: 1.59 },
  { type: "Boston Cream", cost: 5.99 }
];


function ShowResults(donuts) {  
    console.log(donuts.type + " donuts cost $"+ donuts.cost+ " each");  
}

donuts.forEach(ShowResults);

答案 6 :(得分:1)

你可以使用jquery遍历jQuery希望你填充回调函数的所有对象,jquery将回调它。第一个输入参数将被赋予键,第二个输入参数将被赋予值:

$.each(dataList, function(index, object) {
   $.each(object,function(attribute, value){
      alert(attribute+': '+value);
   });
});

文档:http://api.jquery.com/jQuery.each/

答案 7 :(得分:0)

使用jQuery.each

$.each([your array of objects], function(index, value) {
  // Do what you need, for example...
  alert(index + ': ' + value);
});

答案 8 :(得分:0)

在jQuery中使用$.each遍历一个填充了东西的数组,迭代一个Object,其属性使用for..in