将变量传递给JSON

问题描述:

嗨,我新来javascript,所以我的问题可能是基本的,但我需要一些澄清。将变量传递给JSON

的标准方法使用JavaScript创建一个JSON对象是这样的

 var JSONObject = { 
     "name": "John Johnson", 
     "street": "Oslo West 16", 
     "age": 33, 
     "phone": "555 1234567" 
     }; 

现在,我想分配给JSON对象的变量,我从用户那里得到(前)

var JSONObject = { 
    "name": firstName; 
} 

firstName是从用户提取的变量。 当我尝试这个时,它显示一个错误。有没有办法将变量传递给JSON对象作为值?

+0

正在显示哪些错误?通常,'var JSONObject = {name:“firstName};''应该可以工作。 – Smutje

+2

删除';',就像这样:'VAR的JSONObject = { “名”:名字}' – TrungDQ

+0

使用JSON.parse(串)和JSON.serialize(对象) – setec

如果你想分配一个值,然后做类似下面

var JSONObject = { 
     "name": "John Johnson", 
     "street": "Oslo West 16", 
     "age": 33, 
     "phone": "555 1234567" 
     }; 
var firstname = "val"; 
JSONObject.name = firstname; 

这将从John Johnsonname键值val改变。根据你的代码,分号是不允许的。这样做,你会得到SyntaxError: Unexpected token ;错误。它应该是,

var JSONObject = { 
    "name": firstName 
} 
+0

嘿现在工作正常。 Thanx –

+0

@RohitRanjit很高兴帮助你。 :) – Vinay

+0

您也可以尝试'JSONObject ['name'] = firstName;'或'JSONObject.name = firstName;'。 –

JSONObject的只是一个JavaScript对象。你可以这样写。

JSONObject.name = firstName;