如何访问Array Javascript中的对象

时间:2015-09-25 19:37:48

标签: javascript arrays object if-statement

我在数组中有一堆对象。

  • 如何访问对象?
  • 如何为每个对象添加密钥?

示例

var gradesArr = [
    {
        'name' : 'Пешо',
        'score' : 91
    },
    {
        'name' : 'Лилия',
        'score' : 290
    },
    {
        'name' : 'Алекс',
        'score' : 343,
    },
    {
        'name' : 'Габриела',
        'score' : 400
    },
    {
        'name' : 'Жичка',
        'score' : 70
    }]

我想向对象添加一个键hasPassed,其得分超过100。

但我不介意这样做的方法。

2 个答案:

答案 0 :(得分:2)

您可以遍历数组并向这些对象添加属性。 E.g:

for (var i = 0; i < gradesArr.length; i++) {
  if (gradesArr[i].score > 100) {
    gradesArr[i].hasPassed = true;
  }
}

var gradesArr = [{
  'name': 'Пешо',
  'score': 91
}, {
  'name': 'Лилия',
  'score': 290
}, {
  'name': 'Алекс',
  'score': 343,
}, {
  'name': 'Габриела',
  'score': 400
}, {
  'name': 'Жичка',
  'score': 70
}];


for (var i = 0; i < gradesArr.length; i++) {
  if (gradesArr[i].score > 100) {
    gradesArr[i].hasPassed = true;
  }
}

document.querySelector('pre').innerHTML = JSON.stringify(gradesArr, null, 2);
<pre></pre>

答案 1 :(得分:1)

您可以使用forEach数组方法应用所需的更改。

&#13;
&#13;
var gradesArr = [{
  'name': 'Пешо',
  'score': 91
}, {
  'name': 'Лилия',
  'score': 290
}, {
  'name': 'Алекс',
  'score': 343,
}, {
  'name': 'Габриела',
  'score': 400
}, {
  'name': 'Жичка',
  'score': 70
}];

gradesArr.forEach(function(person) {
  if (person.score > 100) {
    person.hasPassed = true;
  }
});

document.getElementById("my_out").innerHTML = JSON.stringify(gradesArr);
&#13;
<div id="my_out"></div>
&#13;
&#13;
&#13;