Can I change the context of javascript “this”?

删除回忆录丶 提交于 2019-11-29 02:56:43
James

No, it's not possible.

You can call a method with a specified value for this (using method.apply()/method.call()) but you cannot re-assign the keyword, this.

You can't change what this refers to from inside the function.

However, you can call a function in a specific context - so that this refers to a specific object - by using call or apply.

J-P is correct. This is not possible. Refer to the JavaScript language specification document ECMA-262. You can download the standard from here:

http://www.ecma-international.org/publications/standards/Ecma-262.htm

The file is ECMA-262.pdf and on page 39, section 10.1.7.

10.1.7 This

There is a this value associated with every active execution context. The this value depends on the caller and the type of code being executed and is determined when control enters the execution context. The this value associated with an execution context is immutable.

Note "is immutable". i.e. cannot be changed.

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!