近期調(diào)試js 發(fā)現(xiàn) js同名函數(shù)調(diào)用的一些問(wèn)題,下面的內(nèi)容說(shuō)的不錯(cuò),文章引自 http://wwwluo.blog.163.com/blog/static/6129023120104181055497/
核心: 勇敢進(jìn)取年輕的心
不管是從外部引進(jìn)來(lái)的js還是頁(yè)面內(nèi)部的js,順序都是后面的覆蓋前面的,同一個(gè)js外部文件里面有多個(gè)同名(注意僅僅是同名,不管參數(shù)和返回值)的函數(shù)的話(huà),后面的覆蓋前面的,頁(yè)面內(nèi)部有多個(gè)js同名函數(shù)仍然是后面定義的覆蓋前面定義的。
記住后面的覆蓋前面的就不難確定函數(shù)的調(diào)用順序了,假如一個(gè)頁(yè)面內(nèi)由一個(gè)函數(shù),然后頁(yè)面引進(jìn)一個(gè)外部js文件,里面也有同名的函數(shù),頁(yè)面最終調(diào)用的是外部頁(yè)面的函數(shù),因?yàn)轫?yè)面引進(jìn)的覆蓋了頁(yè)面內(nèi)部的,有一些人有把js寫(xiě)在</html>標(biāo)簽前面的習(xí)慣,這樣的話(huà),它會(huì)覆蓋前面定義的同名的所有函數(shù),這對(duì)開(kāi)發(fā)有時(shí)候很有用,外部js定義一個(gè)是通用的函數(shù),但是到了具體的頁(yè)面可能函數(shù)的功能有細(xì)微的差別,從而在頁(yè)面的底部(</body>和</html>之間)重定義這個(gè)函數(shù),這個(gè)函數(shù)就能在這個(gè)頁(yè)面起作用了
核心: 勇敢進(jìn)取年輕的心