在 javascript 中,是否可以使用计算属性名称字符串的表达式来构造对象文字?
即是否可以这样做:
var fruit = "banana";
var x = {
"app" + "le" : 5, // "apple" : 5
function(){return "orange"} : 8, // "orange" : 8
"" + fruit : 3 // "banana" : 3
};
i.e. is it possible to do this:
var fruit = "banana";
var x = {
"app" + "le" : 5, // "apple" : 5
function(){return "orange"} : 8, // "orange" : 8
"" + fruit : 3 // "banana" : 3
};
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
不,你不能,你需要在第一次初始化后喂它:
No, you can't, you need to feed it after the first initialization :
您需要声明空对象并在之后构建字符串。
对象文字需要其名称的有效字符串
如果您不运行“orange”函数并定义它,
您想要的名称“orange”将是整个函数的字符串。
You need to declare the empty object and build the strings after.
An object literal expects valid strings for its names
If you don't run the function for 'orange' as well as define it,
the name you want to be 'orange' will be the string of the entire function instead.