gpt4 book ai didi

javascript - 在 JavaScript 中生成 JSON 时,变量没有被值替换?

转载 作者:行者123 更新时间:2023-11-29 18:25:49 27 4
gpt4 key购买 nike

_postData : function ()
{
var fieldName = "day";

var day = /*returns an object from the back end business service*/

var value = day.getValue();

if (value)
{
return {
fieldName : value
};
}
}

问题是,即使 fieldName 实际上是“day”,当返回并打印 JSON 负载时,我看到的是字面意思:

{
fieldName: "16"
}

因此出于某种原因,正在打印变量的名称,而不是实际的字符串值。我想要的是:

{
day: "16"
}

最佳答案

这不是 JSON,它是 Javascript 对象文字。当你在 Javascript 对象文字中的属性左侧放置一个符号时,它用作属性名称,而不是该名称的变量可能计算的任何字符串。换句话说,{fieldName: 16} 完全等同于 {"fieldName": 16}

而不是这样做:

return {
fieldName : value
};

你可以这样做:

var obj = {};
obj[fieldName] = value;
return obj;

在第二个中,如果 fieldName 是一个包含字符串 "foo" 的变量,那么生成的对象将类似于 {foo: 16}

关于javascript - 在 JavaScript 中生成 JSON 时,变量没有被值替换?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13323168/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com