是否可以在对象文字属性中使用变量名来创建对象?
Example
function createJSON (propertyName){
return { propertyName : "Value"};
}
var myObject = createJSON("myProperty");
console.log(myObject.propertyName); // Prints "value"
console.log(myObject.myProperty); // This property does not exist
如果你想使用变量作为属性名称,你可以使用计算属性名称。将变量名称放在方括号之间:
var foo = "bar";
var ob = { [foo]: "something" }; // ob.bar === "something"
如果您想要 Internet Explorer 支持,您将需要使用 ES5 方法(您可以通过编写现代语法(如上所述)然后应用Babel):
首先创建对象,然后使用添加属性方括号表示法.
var foo = "bar";
var ob = {};
ob[foo] = "something"; // === ob.bar = "something"
如果您想以编程方式创建 JSON,则必须将对象序列化为符合 JSON 格式的字符串。例如和the JSON.stringify method.
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)