2017-02-16 117 views
0
currentid = 77; 
produktid = 2222; 
name = "bla"; 

$.extend(artikel,{ 
    currentid:{"produktid":produktid, "name":name} 
}); 


var myJsonString = JSON.stringify(artikel); 
console.log(myJsonString); 

在控制台的结果是:的jQuery /使用Javascript - 变量作为对象键

{"currentid":{"produktid":2222,"name":"bla"}} 

但就是必须是:

{"77":{"produktid":2222,"name":"bla"}} 

{77:{"produktid":2222,"name":"bla"}} 

哪有我这样做?

回答

0

使用计算的属性名称

currentid = 77; 
produktid = 2222; 
name = "bla"; 

$.extend(artikel,{ 
    [currentid]:{"produktid":produktid, "name":name} 
}); 
1

你将不得不增加使用这样的关联数组语法属性。

currentid = 77; 
produktid = 2222; 
name = "bla"; 
obj = {}; 
obj[currentId] = {"produktid": produktid, "name": name}; 

$.extend(artikel, obj); 
var myJsonString = JSON.stringify(artikel); 
console.log(myJsonString); 
+0

谢谢,但guest271314是更快的^^ –

+0

@AnneSchwarz是啊,如果我看到了他的回答,我就不贴我的,因为他是更好,但需要ES6支持。 – kamoroso94