javascript - 在循环中填充 Javascript-Object 键/值?
问题描述
我想做这样的事情:
let obj = [];
for(let i=0;i<4;i++) {
// doing some stuff here ...
// and then, finally:
obj[i].words = wordsOfSentence;
}
然而,这给了我一个错误。
无法设置未定义的属性“单词”
现在,我这样解决它:
let obj = [{}, {}, {}, {}];
for(let i=0;i<4;i++) {
// doing some stuff here ...
// and then, finally:
obj[i].words = wordsOfSentence;
}
...但这意味着我必须事先将一个空对象推入数组中?这里的标准/优雅的解决方案是什么?
解决方案
在存储任何键值对之前,您必须创建一个空白 JSON 对象,然后将 JSON 对象推送到数组中。
let objects = [];
for (let i = 0; i < 4; i++) {
objects[i] = {};
objects[i].words = 'wordsOfSentence';
objects.push(objects[i]);
}
console.log(objects);
推荐阅读
- ios - 在使用 ytplayer SDK 的应用程序中,某些 YouTube 视频无法播放
- c# - 有没有办法为 EF 模型自动创建 CRUD(目前是 DB First)
- python - TypeError:需要一个类似字节的对象,而不是 pd.read_csv 的“str”
- python - `droppdf[df.columnName != 'Value']` 不工作?
- javascript - 更改复选框上的变量值
- python - 如何将条形图的颜色链接到 yticks?
- python - 使用 TensorFlow 概率的贝叶斯逻辑回归
- python - python - 基于多个数据点的评分
- java - 为什么 setMaxBatchSize() 对于 RxAndroidBle 中较大的 MTU 没有用?
- python - 选择日期之间的熊猫数据框行并设置列值