2014-11-20 5 views
-1

Я хочу вставить ключ & Объект в массиве.Вставить ключ и объект в массив

JQuery код:

var steps = []; 
    var RequestParams = {}; 
    RequestParams.ActionName = 'aname'; 
    steps.push({ Name:'abc'} ,RequestParams); 

Мой выход

"steps": [ 
      { "Name": "abc" }, 
      { 
      ActionName :"aname" 
      }, 
    ] 

Ожидаемое:

"steps": [ 
      { "Name": "abc", 
      "RequestParams": { 
      ActionName :"aname" 
      }, 
    ] 

ответ

1
steps.push({"Name": "abc", "RequestParams": RequestParams}); 

То, что вы хотите достигнуть, имея внутри steps массива а JavaScript Object ш с свойством Name, которое имеет значение "abc" и свойство с именем RequestParams, которое имеет значение вашей переменной RequestParams.

+0

Можно без жесткого кодирования? – user3194721

+0

@ user3194721 Что вы подразумеваете под «жестким кодированием»? Что вы тогда используете? – philtune

+1

Я бы сказал, нет, у AFAIK javascript нет механизма отражения, чтобы использовать имя переменной внутри скрипта, поэтому вам нужно жестко указать имя свойства RequestParam. См. Также http://stackoverflow.com/questions/9795773/get-variable-name-javascript-reflection – Raibaz

0

Должно быть

steps.push({ Name:'abc' } ,{ RequestParams:RequestParams }); 
Смежные вопросы