Какова цель сменщика в acl?

вы никогда не устанавливаете d[a] на любое значение.

Из-за этого d[a] оценивается как undefined, и вы не можете установить свойства на undefined.

Если вы добавили d[a] = {} сразу после d = {}, все должно работать как ожидалось.

В качестве альтернативы вы можете использовать инициализатор объекта:

d[a] = {
    greetings: b,
    data: c
};

Или вы можете установить все свойства d в экземпляре анонимной функции:

d = new function () {
    this[a] = {
        greetings: b,
        data: c
    };
};

Если вы находитесь в среде, поддерживающей функции ES2015, вы можете использовать имена вычисленных свойств :

d = {
  [a]: {
    greetings: b,
    data: c
  }
};

0
задан kofhearts 13 July 2018 в 07:19
поделиться