PDA

Просмотр полной версии : Для крутых. Путь в объекте из массива объектов


joker2k1
18.07.2002, 15:19
есть массив объектов.
var arr = new array(obj1,obj2,obj3)
у каждого объекта из массива объектов есть подобъекты.
например
obj1.a1.b2
obj2.c3.b4

есть путь к полю объекта.
не зная имени объекта и подобъектов как обратиться к полям объекта?
для перовой вложенности все понятно

name = 'field';
arr[0][name]

а вот если
name = 'field.a.b'?
то как?
без split ессесна :))))

joker2k1
18.07.2002, 15:23
или прощще говоря вопрос сводиться к:
как обратиться к эелементу массива через eval?

DMN
18.07.2002, 17:57
arr[0]["field"]["a"]["b"]

Не помогает?

joker2k1
19.07.2002, 04:11
внимательнее надо быть.
поля в стоковой переменно через точку.
делить ее нельзя. (split'ом)

УильямБрэдберри
19.07.2002, 15:28
Оригинал написал(а) joker2k1
внимательнее надо быть.
поля в стоковой переменно через точку.
делить ее нельзя. (split'ом)

раз нельзя, тогда отдыхай :)

УильямБрэдберри
19.07.2002, 15:32
либо все-таки сплитуй
var obj = arr[0][name.split(".")[0]][name.split(".")[1]];

joker2k1
19.07.2002, 16:31
мда.
как видно крутых не оказалось :))))

пральный ответ:
eval('arr.1.as.b.a')
ибо массив - тоже объект