Переопределение свойств объекта - PullRequest
3 голосов
/ 24 июля 2011

Рассмотрим это определение объекта:

var map = {
  'Username':
  {
    'user-name': 'userName',
    'first-name': 'fName',
    'last-name': 'lName',
    'active': 'isActive'
  }
}

Как мне переназначить объект, например, это:

data: 
{
   'user-name': SamN,
   'first-name': Sam,
   'last-name': Norbert,
   'active': 1
}

, чтобы получить вывод, подобный этому:

data:
{
   'userName': SamN,
   'fName': Sam,
   'lName': Norbert,
   'isActive': 1
}

1 Ответ

5 голосов
/ 24 июля 2011

Просто переберите свойства:

for(var prop in data) {
    if(data.hasOwnProperty(prop) && prop in map.Username) {
        data[map.Username[prop]] = data[prop];
        delete data[prop];
    }
}

Это изменит объект на месте.Если вы хотите создать новый объект, просто установите свойства для нового пустого объекта.

Вместо этого вы можете перебирать свойства map.Username.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...