"this"的值是多少?在类内部定义的箭头函数中 [英] What is the value of "this" inside an arrow function that is defined inside a class
问题描述
新问题,但我想知道"this"的值对在javascript类中定义的箭头函数的含义是什么.
Newbish question but I was wondering what the value of "this" would be for an arrow function that is defined inside a javascript class.
它是对包含它的类的引用吗?
Is it a reference to the class enclosing it?
例如:
class abc {
testFunction = () => {
//What is the value of 'this' here?
}
}
试图更好地理解这一点,以了解如何将函数传递给ReactJS中的组件.
Trying to understand this better to understand how functions are passed to components in ReactJS.
推荐答案
You've tagged your question "ES6" (which is to say, ES2015) and such, but note that class fields (the syntax you're using) isn't in ES2015 — or ES2016, or ES2017, and won't be in ES2018. It's still a Stage 3 proposal, despite being in widespread use in the React community via transpilation.
根据该建议,字段初始化程序的this
与构造函数中的相同:对新构造的实例的引用.该代码等效于:
With that proposal, this
for the field initializers is the same as it would be in the constructor: A reference to the newly-constructed instance. That code is equivalent to:
class abc {
constructor() {
this.testFunction = () => {
// ...
};
}
}
这篇关于"this"的值是多少?在类内部定义的箭头函数中的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!