Показать сообщение отдельно
  #2 (permalink)  
Старый 31.05.2019, 14:04
Аватар для Malleys
Профессор
Отправить личное сообщение для Malleys Посмотреть профиль Найти все сообщения от Malleys
 
Регистрация: 20.12.2009
Сообщений: 1,714

a) parent.child.name;
var parent = {
    child: {
        name: "hello"
    }
};

alert(parent.child.name);


b) child.name;
<label id="parent">
    <input id="child" name="hello">
</label>

<script>
alert(child.name);
</script>

или
var parent = {
    child: {
        name: "hello"
    }
};

var child = parent.child;
alert(child.name);


c) parent.child;
var parent = {
    child: {
        name: "hello",
        toString() { return this.name; }
    }
};

alert(parent.child);


d) parent.name
Конечно можно сделать через Proxy, чтобы оно выдавало имя вложенного объекта, но так делать не правильно, поскольку запись parent.name подразумевает имя родительского объекта.

Последний раз редактировалось Malleys, 31.05.2019 в 14:24.
Ответить с цитированием