Еще одно использование скобочной нотации для объектов - это доступ к свойству, которое хранится как значение переменной. Это может быть очень полезно для итерации через свойства объекта или при доступе к поисковой таблице. Ниже приведен пример использования переменной для доступа к свойству:
const dogs = { Fido: "Mutt", Hunter: "Doberman", Snoopie: "Beagle" };
const myDog = "Hunter"; const myBreed = dogs[myDog]; console.log(myBreed);
Другой способ использования этой концепции - это формирование имени свойства динамически во время выполнения программы. Пример:
const someObj = { propName: "John" };function propPrefix(str) {
const s = "prop";
return s + str;
}
const someProp = propPrefix("Name"); // return "propName" console.log(someObj[someProp]);
Или вот так:
const someObj = {
propName: "John"
};
const someProp = "prop" + "Name"; // return "propName"
console.log(someObj[someProp]);
Обратите внимание, что мы не используем кавычки вокруг имени переменной при ее использовании для доступа к свойству (что делало бы переменную не переменной, а простой строкой), потому что мы используем значение переменной, а не имя.
Используйте переменную playerNumber для поиска игрока 16 в объекте testObj с использованием скобочной нотации. Затем назначьте это имя переменной player.