将Javascript变量插入JSON对象

将Javascript变量插入JSON对象,javascript,html,variables,frontend,Javascript,Html,Variables,Frontend,我有一个JSON对象,如下所示: var values = { "email": " ' + fn + ' ", // This field is required to identify existing customers. "first_name": "email", "last_name": "email", "address": "email", "city": "email", "state": "email", "zip": "email", "dob": "email" // T

我有一个JSON对象,如下所示:

var values = {
"email": " ' + fn + ' ", // This field is required to identify existing customers.
"first_name": "email",
"last_name": "email",
"address": "email",
"city": "email",
"state": "email",
"zip": "email",
"dob": "email" // This field must match the following format: YYYYMMDD. This field is also required
};
我试图插入:

var fn = 'Tom'; 
但这个变量并没有出现。我该怎么办

问题是“+fn+”被视为字符串,因此永远不会替换fn。你想要的是:

var fn = "Tom";

var values = {
"email": " " + fn + " ", // This field is required to identify existing customers.
"first_name": "email",
"last_name": "email",
"address": "email",
"city": "email",
"state": "email",
"zip": "email",
"dob": "email" // This field must match the following format: YYYYMMDD. This field is also required
};
如果你不需要前后的空格,你可以使用email:fn。问题是,“+fn+”被视为字符串,因此fn永远不会被替换。你想要的是:

var fn = "Tom";

var values = {
"email": " " + fn + " ", // This field is required to identify existing customers.
"first_name": "email",
"last_name": "email",
"address": "email",
"city": "email",
"state": "email",
"zip": "email",
"dob": "email" // This field must match the following format: YYYYMMDD. This field is also required
};

如果不需要前后的空格,可以使用email:fn将JSON与javascript结合使用的标准方法是在应用程序中创建一个对象,在这种情况下,它可能看起来像这样

var values = {
   email: "Tom@whatever",
   name: "Tom"
}
您可以随意与该对象交互,例如

values.city = "New York";
然后,当您准备创建表示该对象的JSON对象时,可以使用JSON.stringify MDN文档

在这种情况下

let jsonString = JSON.stringify(values);
console.log(jsonString);
产生以下结果:

{"email":"Tom@whatever","name":"Tom","city":"New York"}
这意味着您根本不必担心手动创建JSON字符串


关于JSON的更多信息

将JSON与javascript结合使用的标准方法是在应用程序中创建一个对象,在这种情况下,它可能看起来像这样

var values = {
   email: "Tom@whatever",
   name: "Tom"
}
您可以随意与该对象交互,例如

values.city = "New York";
然后,当您准备创建表示该对象的JSON对象时,可以使用JSON.stringify MDN文档

在这种情况下

let jsonString = JSON.stringify(values);
console.log(jsonString);
产生以下结果:

{"email":"Tom@whatever","name":"Tom","city":"New York"}
这意味着您根本不必担心手动创建JSON字符串


更多关于JSON的信息

如何尝试?不出现在哪里?这是一个JavaScript对象,不是JSON对象。我现在明白了。是的,那不管用。使用email:fn,简单的问答题:独角兽和JSON对象有什么共同点?如何尝试?不出现在哪里?这是一个JavaScript对象,不是JSON对象。我现在明白了。是的,那是行不通的。使用email:fn,简单的问答题:独角兽和JSON对象有什么共同点?