Почему консоль выводит это значение?
Друзья, есть JS код. Я в непонятках: почему консоль выводит 456. Объясните, пожалуйста
let dwayne = {}; let daniel = { firstName: 'Daniel', }; let jason = { key: 'jason', }; dwayne[daniel] = 123; dwayne[jason] = 456; console.log(dwayne[daniel]); |
let dwayne = {}; let daniel = { firstName: 'Daniel', }; let jason = { key: 'jason', }; dwayne[daniel] = 123; dwayne[jason] = 456; console.log(dwayne[daniel]);
Дополнительно:
Проверь значение для dwain
console.log(dwayne);
Возможно будет более наглядно.
И почитай про объекты в джаваскрипт.
Вы пытаетесь в качестве имени свойства использовать объект, а JS разрешает там только строки.
Объект приводится к строке и ваш код превращается в итоге вот в это:
dwayne['[object Object]'] = 123; dwayne['[object Object]'] = 456; console.log(dwayne['[object Object]']); |
dwayne['[object Object]'] = 123; dwayne['[object Object]'] = 456; console.log(dwayne['[object Object]']);
Думаю, тут уже понятно, почему результат именно такой.
При этом, если бы вы использовали другой синтаксис, то и результат был бы другим:
dwayne.daniel = 123; // аналог dwayne['daniel'] dwayne.jason = 456; // аналог dwayne['jason'] console.log(dwayne.daniel); |
dwayne.daniel = 123; // аналог dwayne['daniel'] dwayne.jason = 456; // аналог dwayne['jason'] console.log(dwayne.daniel);
Но эти daniel и jason никак не связаны с одноимёнными объектами выше.
- Аааа, я поняла! Спасибо большое!!!
Опишите проблему, и специалист поможет с настройкой, исправлением ошибки или доработкой сайта. Подберём понятный план работ без лишней переписки.
Пока нет других ответов. Будьте первым, кто поможет автору.
Ответить на вопрос
Консоль может выводить различные значения в зависимости от того, что именно происходит в вашем коде. Вот несколько причин, почему консоль может выводить определенное значение:
1. Ошибка в коде: Если в вашем коде есть ошибки, консоль может вывести сообщение об ошибке или неправильный результат. Убедитесь, что ваш код без ошибок и правильно написан.
2. Использование функций: Если вы используете функции или методы, консоль может выводить значения, возвращаемые этими функциями. Проверьте, что ваши функции возвращают правильные значения.
3. Значение переменных: Консоль может выводить значения переменных, которые вы используете в вашем коде. Убедитесь, что значения переменных соответствуют вашим ожиданиям.
4. Вывод результатов: Если вы явно указываете консоли, что нужно вывести определенное значение, то консоль будет выводить именно это значение. Проверьте свой код на наличие команд вывода результатов.
5. Взаимодействие с внешними источниками данных: Если ваш код взаимодействует с внешними источниками данных, например, базой данных или API, консоль может выводить данные, полученные из этих источников.
В общем, чтобы понять, почему консоль выводит определенное значение, необходимо внимательно изучить свой код, проверить его на наличие ошибок и убедиться, что все переменные и функции работают правильно.