2014-04-25 139 views
0

我想创建一个JavaScript对象的内部,增加变量值的JSON报价

var systemName = {"system" : varA}; 

但我想的对象是在形式`{“系统”:“翻”}

varA具有变量值,但插入双引号内。 我试过{"system" : "'+ varA +'"}; 但这并没有伎俩。你能指出我在这里做错了吗?我知道它是一件简单的事情。但有时这些小东西让我们卡在某些点

+1

如果你不需要那么 –

+0

我没有得到一个字符串你想。 '{“system”:“varA”}'有什么问题? – freakish

+0

是'varA'是变量还是字符串? – Navin

回答

0

JSON.stringify(varA)将围绕值添加JSON引号。

1

试试这个

var systemName = {}; 
systemName.system = varA; 

(或)

systemName["system"] = varA; 
1

你不想这样做。你不应该这样做。如果它是一个字符串,JSON解析器将为您处理它。不要担心向它添加引号。你没有理由把变量的字面值加上引号。如果需要,可以在输出时将引号置于其周围。

var varA = "Hello"; 
var systemName = {"system" : varA}; 

console.log(JSON.stringify(systemName)); 
// {"system":"Hello"} 

http://jsfiddle.net/FWBub/

但是,如果你必须这样做:

var varA = '"Hello"'; 
var systemName = {"system" : varA}; 

console.log(JSON.stringify(systemName)); 
{"system":"\"Hello\""} 

http://jsfiddle.net/FWBub/1