Chrome 和 Safari 均报告这是非法的。他们报告“意外的 token ‘this’”指向‘this.b’。以下是显示问题所需的最少代码:
function x(){ this.a = function() {} this.b = function() {} }
只有当两个声明位于同一行时才会发生这种情况。有任何想法吗?对我来说看起来合法。
这很烦人,因为这是 Javascript 缩小器产生的结果。
最佳答案
Javascript 会自动在新行中插入分号。这里缺少的是用于分隔语句结尾的原始分号。
像正确的 JS 一样在右大括号后面插入分号,它会正常工作。
关于javascript - 为什么这个 Javascript 语法是非法的?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15843033/