2015-12-19 4 views
1
function(property, res, err, result){ 
    var json = {}; 
    json[property] = result; 
    res.json(json); 
}; 

Хорошо, это функция, которая будет принимать вышеуказанные параметры. При вызове он создает объект с именем json, мой вопрос касается следующей строки, которую я вообще не понимаю, является ли этот объект потом списком свойств? Пожалуйста, просветите меня.javascript объекты или массивы? что это?

+1

мы из спичечных палочек для 'enlighten' вас –

ответ

4

Существует два способа задания свойств объектов. В большинстве случаев люди используют точечную нотацию, как это:

json.property = result; 

Но если имя свойства является строка (что будет принят в качестве property аргумента), то, как свойство объекта устанавливается как это:

json[property] = result 

Например, если кто-то ставит эти аргументы в функцию («имя», бла, бла, «Сэм»), что на самом деле происходит в линии в вопросе:

json["name"] = "Sam" 

Что эквивалентно:

json.name = "Sam" 

и результаты в объекте с именем json, который выглядит следующим образом:

{ 
    name: "Sam" 
} 
3

Вы просто устанавливающего свойство объекта. Свойства объекта могут быть доступны/установить по-разному:

objectName.property   // person.age 

или

objectName["property"]  // person["age"] 

или ваш случай:

objectName[expression]  // x = "age"; person[x] 
Смежные вопросы