0

次のようなオブジェクトがあります。

var myObj = {
    someProp: 1,
    updateObj: function (obj) {this = obj;}
}

invalid assignment left hand sideそのため、関数を含む行で取得していますfirefoxが、クロムでは取得していません。では、どちらを選べばいいのか悩んでいます。

ありがとうございました。

4

1 に答える 1

0

これの代わりに「self」のようなものを使用してください。許可されていない 'this' に割り当てようとしています。

var myObj = {
    someProp: 1,
    updateObj: function (obj) {self = obj;}
}

実際にオブジェクトが何であるかを変更しようとしている場合は、再割り当てしてください...

var obj = {
    someProp: 1
};

obj = {
   someProp: 2
};

...または、次のようなより明示的な更新を行います。

var obj = {
    someProp: 1,
    updateObj: function(obj) {
       this.someProp = obj.someProp;
    }
};
于 2013-06-19T20:13:43.553 に答える