【问题标题】:JavaScript: Assigning values to array of null/empty objectsJavaScript:为空/空对象数组赋值
【发布时间】:2019-03-14 18:53:41
【问题描述】:

我知道语法是错误的,但在下面的代码中key 应该等于对象的键。随着循环的迭代,key 被分配了i 值,所以a:1、b:2...等。

var objArr = [
  {a: null},
  {b: null},
  {c: null}
];

for (var i = 0; i < objArr.length; i++) {
    objArr[i].key = i;
}

【问题讨论】:

  • 您是否忘记在声明中添加分号?
  • @AlexisVillar 这是有效的 JavaScript。
  • 到目前为止你尝试了什么?
  • @clabe45 我真的什么都没尝试,因为我什至不知道如何解决这个问题。
  • 想想你的问题。您想为对象数组中的相应字母分配一个递增的数字。您在正确的轨道上,但您正在设置每个对象的 key 属性。一种方法是convert the integer to a letter。

标签: javascript arrays loops for-loop javascript-objects


【解决方案1】:

假设对象只包含一个键,您可以使用Object.keys[0]找到键:

var objArr = [
  {a: null},
  {b: null},
  {c: null}
];
objArr.forEach((obj, i) => {
  const key = Object.keys(obj)[0];
  obj[key] = i;
});
console.log(objArr);

【讨论】:

    猜你喜欢
    • 2015-01-21
    • 2015-10-04
    • 1970-01-01
    • 1970-01-01
    • 2019-08-09
    • 2013-07-05
    • 1970-01-01
    • 2018-11-25
    • 1970-01-01
    相关资源
    最近更新 更多