说我需要使用object
关键字将一些方法粘贴到this
,但是在另一个函数内部或promise
内部(由于某种原因this
在那种情况下是undefined
。
这样做会有约定吗?这是一个语义问题,因为我知道我需要做的只是var cachedThis = this;
才能使它工作。
我可以使用现有的模式,未来的开发人员可能会识别吗?
答案 0 :(得分:1)
我正在使用一种,我已经看到它被大量使用了 “让我自拍...'
var self = this;
我不确定这是否有资格被称为惯例。
答案 1 :(得分:0)
许多人使用“自我”或“那个”。 (根据@LIUFA)。至于“惯例”,其中一个是最好的。
就个人而言,那些对我来说感觉/读得有点奇怪。我使用基于类的名称。例如,如果构造函数是Foo,我使用
var foo = this;
YMMV - 我有Java背景,所以小写的类名感觉非常自然。如果你有一个smalltalk或python背景,你会喜欢“自我”。