SyntaxError: missing : after property id - JavaScript 编辑

错误提示

SyntaxError: missing : after property id

错误类型

SyntaxError

哪里出错了?

当使用对象初始化语法创建对象的时候,需要使用半角冒号 (:) 将属性键与属性值隔开。

var obj = { propertyKey: 'value' };

示例

冒号与等号

下面的代码会运行失败,原因是对象初始化语法中不允许使用等号来代替冒号。

var obj = { propertyKey = 'value' };
// SyntaxError: missing : after property id

修复方法就是使用冒号,或者是在对象创建之后使用方括号语法来为其设定新的属性。

var obj = { propertyKey: 'value' };

// or alternatively

var obj = { };
obj['propertyKey'] = 'value';

空属性

不能像下面这样创建空属性:

var obj = { propertyKey; };
// SyntaxError: missing : after property id

假如你需要创建一个无值属性,那么需要将它的值设置为 null

var obj = { propertyKey: null };

计算得来的属性

如果需要使用表达式来创建属性键,那么需要使用方括号。否则属性名称不会进行计算:

var obj = { 'b'+'ar': 'foo' };
// SyntaxError: missing : after property id

把计算表达式放置到方括号([])中:

var obj = { ['b'+'ar']: 'foo' };

相关内容

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。
列表为空,暂无数据

词条统计

浏览:98 次

字数:3041

最后编辑:7年前

编辑次数:0 次

    我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
    原文