0
A
回答
2
它對性能沒有幫助。它有助於混淆。 this
自動重新分配很多。如果你想記住什麼是this
,你可以將它分配給其他東西,傳統上me
,self
或that
。或者您使用bind
。它也有助於壓縮,因爲me
可以壓縮爲單字母變量,但只有this
是神奇的,不能重命名。
3
它不會在服務表現幫助,但是當被調用的函數在不同的範圍內,你仍然有指針的預期目標
function someFunc() {
var me = this;
someElement.on("click", function() {
console.log(me);
console.log(this);
});
};
時,這是記錄在控制檯將顯示函數的調用者。在我登錄的情況下,它會顯示被點擊的元素。
0
這不是性能相關的。但是通過這種方式,它聲明瞭一個var,可以在這個「Closure」中被其他成員訪問。注意到其他成員的「這個」不是由定義上下文決定的,「this」是誰調用函數的人。相反,變體範圍總是由定義上下文決定的。
+0
更像是評論而不是回答。 – 2014-09-11 09:34:05
相關問題
- 1. 從Parse.Query分配一個對象到一個全局變量
- 2. 爲什麼這個變量在C#中通過Mono被列爲未分配的局部變量
- 3. 爲什麼python認爲這是一個局部變量?
- 4. 爲什麼這個變量作爲一個對象?
- 5. 爲什麼這個指針沒有被分配給一個新的對象?
- 6. 爲什麼這個全局變量沒有被改變?
- 7. 爲什麼將一個函數(屬於一個對象)分配給一個變量的行爲是這樣的?
- 8. 爲什麼局部變量在這種情況下被「記住」?
- 9. 這個局部變量的值爲什麼會改變?
- 10. 這個對象爲什麼被釋放?
- 11. 爲什麼這個變量被認爲不是一個數字
- 12. 爲什麼局部變量不能在聲明和全局變量分配?
- 13. 爲什麼這個局部變量被標記爲undefined? - 紅寶石
- 14. 角JS - 一個對象作爲變量
- 15. 爲什麼這個全局堆對象沒有被釋放?
- 16. 分配一個對象引用變量
- 17. Javascript - [爲什麼?]爲一個對象指定一個變量
- 18. JSHint:爲什麼這個局部變量的值永遠不會被讀取?
- 19. JS全局變量到局部變量
- 20. 爲什麼將一個IIFE分配給一個變量?
- 21. 爲什麼不在R的這個`if`語句中分配這個對象?
- 22. 爲什麼不分配一個int到f32變量編譯?
- 23. 這個實例對象爲什麼被改變?
- 24. 爲什麼一個原始變量就像一個對象?
- 25. 爲什麼一個對象變量必須是一個指針?
- 26. 在java中,一個對象被認爲是一個變量?
- 27. 爲什麼方法參數重新分配給局部變量?
- 28. 重構的局部變量的一個對象,我會回到
- 29. 分配對象到變量
- 30. 將對象字段分配給局部變量有什麼優勢?
+1因爲它有助於混淆。 'var me = this'是我的寵物,而不是有人將自己的頭撞向計算機2個小時,因爲在'me!== this'的特殊情況下,他們可能會重構一些重複的代碼並減少這種方式縮小了尺寸。 – pllee 2014-09-11 17:12:35