如何理解"this對(duì)象是方法的屬性值",文中加粗的這段話(huà)很晦澀難懂
如何區(qū)分javascript中的方法(method)、函數(shù)(function)、事件(event)三個(gè)概念?
Java中只有方法,C中只有函數(shù),而C++里取決于是否在類(lèi)中。
函數(shù)是由事件驅(qū)動(dòng)的或者當(dāng)它被調(diào)用時(shí)執(zhí)行的可重復(fù)使用的代碼塊,與對(duì)象無(wú)關(guān)。函數(shù)可以帶有實(shí)參或者形參,可以返回值。函數(shù)和字符串、數(shù)值一樣也是數(shù)據(jù)類(lèi)型,因此可以直接儲(chǔ)存在變量中。比如自己寫(xiě)的倒計(jì)時(shí)函數(shù),觸發(fā)單擊事件時(shí)調(diào)用倒計(jì)時(shí)函數(shù)開(kāi)始計(jì)時(shí)。
方法是通過(guò)對(duì)象調(diào)用的javascript函數(shù),方法也是函數(shù),是比較特殊的函數(shù),方法和對(duì)象相關(guān)。假設(shè)有一個(gè)函數(shù)是fn,一個(gè)對(duì)象是obj,那么就可以定義一個(gè)method
obj.method = fn; ? //定義一個(gè)方法obj.method(); ? ?//調(diào)用方法
方法是用來(lái)操作this對(duì)象的,this對(duì)象是方法的一個(gè)重要屬性,當(dāng)this對(duì)象出現(xiàn)在方法主體內(nèi)部時(shí),this就指向調(diào)用該方法的對(duì)象。
方法是程序?qū)δ巢僮鞯奶幚?,比如show(),你可以在觸發(fā)單擊事件的時(shí)候調(diào)用show(),也可以在雙擊的時(shí)候調(diào)用。
事件是你通過(guò)某種動(dòng)作觸發(fā)的,比如單擊、雙擊、鼠標(biāo)劃過(guò)等等。
2017-03-30
誰(shuí)調(diào)用這個(gè)函數(shù)或方法,this關(guān)鍵字就指向誰(shuí)。
詳情請(qǐng)參考(http://www.cnblogs.com/justany/archive/2012/11/01/the_keyword_this_in_javascript.html)