【发布时间】:2013-06-19 20:04:21
【问题描述】:
我有一个这样的对象:
var myObj = {
someProp: 1,
updateObj: function (obj) {this = obj;}
}
所以我在包含firefox 中的函数的行中得到invalid assignment left hand side,但不是在chrome 中。所以我想知道我应该选择哪一个?
谢谢。
【问题讨论】:
-
this是预定义的关键字,不能重新定义。 Chrome 也会出现同样的错误,因为任何其他浏览器都会... -
我刚刚注意到chrome在我实际调用函数时也会出现这个错误,但声明时没有。
-
是的,浏览器解析代码的方式不同,有些会事先检查语法,有些会在使用前检查(文字对象在每次使用时都会被解析)。
-
如需更改
this,请在MDN查看apply & call。 -
@Teemu:感谢您的提示和链接。
标签: javascript google-chrome firefox variable-assignment