以這種方式分配變量的目的是在嵌套作用域存在時爲父作用域內的活動對象提供訪問。我認爲這是一種很差的形式;爲什麼不爲父目標對象提供更有意義的變量名?var that = this,self = this等
例如,如果我們選擇頁面中的所有div,並遍歷它們。在每個div中,我們選擇目標div中的所有錨鏈接,在嵌套循環中迭代這些錨鏈接。在這個例子中,外部作用域的「this」是當前目標div,內部作用域的「this」將是當前目標錨鏈接。
要在外部範圍創建一個鉤到活動的目標DIV,我通常會看到:
var that = this;
即使在Crockford的好零配件的書,他使用這個任務。
在質疑這種技術,爲什麼不更有意義的事情做出醜的風險,像
var outerDiv = this;
你覺得呢?
你可以這樣做。 – sachleen
這只是一個命名約定。每當我看到一些名爲'self'和'that'的東西時,我傾向於知道它是什麼意思,而如果我看到'outerDiv',我就不得不搜索它是否是一個局部變量。 –
@sachleen:你的意思是,「你可以做_this _...」:) – user1354017