Рекурсивно добавить в массив
Все привет и с праздником.
есть массив: arr = ['a', 'a1', 'a2' /*, и так продолжать*/]; // нужно получить массив типа a.a1.a2, где a,a1,a2 пускай будут = 1 // нужна вот такая вложенность из линейного массива |
Цитата:
|
Обычно это делается из объектов:
var arr = {'a': {'a1': {'a2':1}}}; alert(arr.a.a1.a2); А из массива делать глупо и не разумно. |
извините, извините))
a = [a1 = a2[]] тип того) |
не знаю можно ли так но мне надо именно так:
s.s1 = 2; s = 1; s.s1.s2 = 3; // и потом, получать значения s.s1 - выдасть 2 s - выдасть 1 // можно так? |
Цитата:
|
можно маленький примерчик, очень нужно.
|
Nightmare,
var a = {}; //тут должен быть объект, иначе нельзя a.a1 = 1; a.a2 = 2; alert([a.a1,a.a2]); ps: смотри json devote, как можно через прототипы сделать var s = 1; s.s1 = 1; Я тоже хотел бы посмотреть. ps2: var s = new Number(15); s.s1 = 2; alert([parseInt(s),s.s1]); var s = new String("23.2s"); s.s1 = 2; alert([s.toString(),s.s1]); Но это какбэ изврат. |
А по-моему круто) Хоть и изврат :D
|
но s1 не является дочерним элементом s )
|
Nightmare,
Ты уж определись, что тебе надо, вложенность или просто хэш. |
ну вообще-то то и то
|
Тогда я уже ответил.
|
Часовой пояс GMT +3, время: 06:55. |