Im любопытное новое для JS, и я пытаюсь понять, как для/в цикл действительно работает, вот некоторые примеры кода:Понимание для в цикле (JavaScript)
phoneBook = {};
phoneBook.bill = { name : "bill", lastName "hayder" };
phoneBook.steve = { name : "steve", lastName "garcia" };
for (obj in phoneBook)
{
console.log(obj);
};
Когда я запускаю этот код я получаю счет и steve в качестве вывода, мой вопрос в том, что это то, что итератор держит, почему мне разрешено делать phoneBook [obj] и работать с этим? Если я набираю вручную phoneBook [bill], я получаю сообщение об ошибке, я могу только phoneBook.bill или phoneBook ["bill"].
Спасибо за помощь.
Поскольку 'bill' как идентификатор не определен. Синтаксис JS допускает только 'objectName [" свойство "]' или 'objectName.property'. Если 'bill' была переменной строки, это сработало бы. Так обстоит дело с 'obj' - это строка. – Xufox
Для получения дополнительной информации вы можете проверить, как работает работа с объектами в js https://developer.mozilla.org/en-US/docs/Web/JavaScript/Guide/Working_with_Objects – Tanmay
Ссылка: [Property Accessors] (https: // разработчик .mozilla.org/EN-US/Docs/Web/JavaScript/Справочник/Операторы/Property_Accessors) –