gpt4 book ai didi

javascript - 这个 Javascript 对象字面量键限制是否严格是由于解析?

转载 作者:可可西里 更新时间:2023-11-01 02:31:40 26 4
gpt4 key购买 nike

请引用下面的代码,当我“评论”任何一个被注释掉的行时,它会导致错误(在 IE 中)“':' expected”。那么我的结论是正确的,即无法提供对对象值的引用,作为字符串文字中的对象键;这严格来说是一个解释器/解析问题吗?与 Crockford 的“好部分”相比,这是 Javascript 糟糕(或至少“坏”)“部分”的候选者吗?

<script>
var keys = {'ONE': 'one'};

//causes error:
//var obj1 = {keys.ONE: 'value1'};
//var obj1 = {keys['ONE']: 'value1'};

//works
var obj1 = {};
obj1[keys.ONE] = 'value1';

//also works
var key_one = keys.ONE;
var obj2 = {key_one: 'value1'};
</script>

最佳答案

文字对象语法的限制是名称必须是文字。由于名称可以指定为标识符和字符串,因此不可能使用变量来代替。

这将创建一个具有属性 n 的对象,而不是属性 answer:

var n = 'answer';
var o = { n: 42 };

关于javascript - 这个 Javascript 对象字面量键限制是否严格是由于解析?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2873163/

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