如何将 属性 添加到动态命名的对象的 属性

How to add a property to an object's property that is dynamically named

var aaa = new Object;
var bbb = 2;
var ccc = 5;
aaa[bbb].description = differentObject.ccc.description;

console.log(aaa.bbb.description);  //will report "undefined"

我需要的是为 bbb 的每个新值创建一个 属性“描述”并为其赋值 在对象 aaa 内部。 (在我的代码中,除了 aaa 的声明之外)在一个循环中运行,bbb,ccc 值随每个循环而变化。

a.b 等同于 a["b"] 所以当你做 aaa.bbb 你没有做任何与 bbb 变量相关的事情。

aaa[bbb].descriptionaaa[bbb] 上设置 属性 是正确的,但是,aaa[bbb] 需要是一个对象。

一个更简单的方法是:

var aaa = {};
var bbb = 2;
var ccc = 5;
aaa[bbb] = {description: differentObject[ccc].description};