在胖箭中用词汇表示这个背景

时间:2017-12-06 17:21:50

标签: javascript typescript ecmascript-6

一个例子可以更好地说明我的问题。

    someFunc: function() {
        this.somePublicFunc(this.columns[0])
    }

使用常规函数(),this.columns将指向obj.columns。有没有办法在胖箭头函数中访问此范围的函数?

或者我可以在非胖箭头函数中调用公共函数吗?

{{1}}

编辑:我知道我可以访问obj.columns,但正在寻找其他选项,因为这不是实际代码最优雅的选项。

编辑:这是将所有公共方法快速更改为箭头功能的全部结果。我甚至从未想过将问题方法改为传统的非胖箭头功能。问题解决了,自我伤痕累累。

1 个答案:

答案 0 :(得分:2)

请记住,箭头函数在声明函数时根据当前this确定其this,而不是基于它在对象中的位置。

在上面的代码中,假设它在全局运行,this指针在浏览器中为window,在声明函数global时在节点中为someFunc这将是箭头函数内的this指针。

通常,使用传统的函数声明可以解决您的问题,除非this被其他内容更改。