Функция JavaScript для создания структурированного объекта из строки? - PullRequest
2 голосов
/ 20 ноября 2011

Может ли кто-нибудь помочь мне создать функцию JavaScript, которая превратит приведенную ниже строку в объект?

var structure = 'user.location.city';

При запуске через функцию JavaScript вернется объект, структурированный следующим образом:

user: {
  location: {
    city: {}
  }
}

Я придумал приведенный ниже код, но объект перепутан:

var path = structure.split('.');
var tmp_obj = {};
for ( var x = 1; x < path.length; x++ ) {
   tmp_obj[path[x]] = {};
};

Я не знаю, как добавить объект "city" к объекту "location".

1 Ответ

3 голосов
/ 20 ноября 2011
var path = structure.split('.');
var tmp_obj = {};
var obj = tmp_obj;
for(var x = 1; x < path.length; x++) {
    tmp_obj[path[x]] = {};
    tmp_obj = tmp_obj[path[x]];
};
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...