@Stone-Studio

Как обратиться к объекту, зная его название в виде строки?

У меня есть название объекта, которое является строковым значением. Есть объект с названием того самого строкового значения. Например, у меня есть строковое значение "one". (id = "one") Есть объект one (one = {two: "three"}). Нужно обратиться через id. id.two, конечно не работает. Как обратиться к объекту, зная его название в строке?

Предвкушая вопрос, а зачем, отвечу. У каждого id элемента есть свой объект. Структура одинаковая, данные разные. ID прописаны в HTML и при клике на ссылку, мы получаем ее id и должны обратиться к свойству объекта этого элемента.
  • Вопрос задан
  • 2616 просмотров
Пригласить эксперта
Ответы на вопрос 2
Если я правильно понял ваш вопрос, то знайте что к элементам объекта можно обращаться как с элементами массива. Пример:
var source = {
	'one': {
    id: 1,
    name: 'Name1',
  },
  'two': {
    id: 2,
    name: 'Name2',
  }};

console.log(source['one']['name']);
console.log(source['two']['name']);


Вернет:
Name1
Name2
Ответ написан
IonDen
@IonDen
JavaScript developer. IonDen.com
Чуть чуть усложните структуру, тогда все будет просто:
var storage = {
    id1: {one: 1, two: 2},
    id2: {one: 1, two: 2}
}


Теперь забываем про точечную нотацию и передаем названия свойств в виде строк:
var one = storage["id1"]["one"];

Если все же очень хочется в корне держать такие id-объекты, то можно обратится через window:
var one = window["id1"]["one"];
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы