javascript присваивает значение неопределенной переменной - PullRequest
0 голосов
/ 14 мая 2018

Я ищу способ сделать возможным присваивать значение неопределенным числам в JavaScript. обычно мы пишем так,

var a = {};a.b = {};a.b.c = 'hello world';

если есть какое-либо решение сделать такой код возможным?

var a={}; a.b.c='hello world';

Ответы [ 3 ]

0 голосов
/ 14 мая 2018

Насколько я знаю, номер ab нужно назначить, прежде чем пытаться присвоить abc значение.

Лучший способ достичь желаемого результата - использовать литерал объекта Javascript.

let a = {
  b: = {
    c: 'hello World'
    }
 };

Это легче читать, и это более стандартный способ создания объектов JS.Хранение всего этого в одной строке - не лучший стиль кодирования.Добавление новых строк облегчает чтение и отладку с помощью точек останова.

Вот несколько ссылок для проверки: https://www.w3schools.com/js/js_objects.asp https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Operators/Object_initializer

0 голосов
/ 14 мая 2018

Не точно то, что вы просите, но вы можете создать пользовательский объект, который можно использовать следующим образом.

function A(){
    this.b = {};
}

var a = new A();
a.b.c = "Hello World";
0 голосов
/ 14 мая 2018

Вы как бы ответили на свой вопрос.
Есть ли способ присвоить значение неопределенной переменной? ПОЧЕМУ ?
Быстрый просмотр документации из undefined говорит о том, что undefined имеет атрибут свойства Writable, установленный на false.Итак, проще говоря, вы не можете.
Даже если бы вы могли, как бы компилятор узнал, что такое b в вашем случае, до тех пор, пока вы не укажете это?

...