我對JavaScript很新,我正在清理一些我下載的JavaScript代碼。此代碼中的一個不一致點是this
和引用它的本地變量that
的混合使用。是否最好使用「this」或「that」(其中var = this)?
示例代碼片段(一個jQuery UI插件內私有方法):
_populateLists: function(options) {
//do stuff with this
var that = this;
options.each(function(index) {
//use both this AND that, they are different in this scope
});
//here this and that are the same thing
//I want to be consistent, is one preferable over the other?
},
在整個代碼,其中,所述範圍是這樣的:this === that
很多地方,有混合使用,即使在同一行的代碼。
爲了便於閱讀和維護,最好使用this
或that
?
注:我意識到很多這些類型的東西取決於開發人員的偏好。但在我決定重寫代碼以使用其他代碼之前,我想了解任何推理,如果/爲什麼會比另一個更優先。
編輯:在該腳本中,我認爲僅原因this
被分配到一個局部變量是,以便它可以從內罩內被參考。
「爲求..「我使用'this' *,除了''那個(我稱之爲別的東西)需要實現正確的語義時。因此,'that'(我稱之爲別的東西)在我的代碼中用作標記/註釋,不應該在需要'this'的情況下使用。 – 2012-12-26 21:55:50
'那是一個可怕的變量名稱(我非常使用它)。 'this'我會打電話辯論,因爲在某些情況下,它會立即傳達變量的目的,例如,在循環集合時使用'this'來引用集合中的每個項目。如果「這」引起混淆,請給它一個有意義的名字。 – Anurag