狠狠色丁香婷婷综合尤物/久久精品综合一区二区三区/中国有色金属学报/国产日韩欧美在线观看 - 国产一区二区三区四区五区tv

LOGO OA教程 ERP教程 模切知識交流 PMS教程 CRM教程 開發(fā)文檔 其他文檔  
 
網(wǎng)站管理員

如何解決JavaScript初學(xué)的迷惑

admin
2010年7月22日 23:55 本文熱度 5374
網(wǎng)上推薦了一本書,叫《javascript權(quán)威指南》,據(jù)說是相當(dāng)?shù)膅ood,有時間應(yīng)該認(rèn)真的去讀一遍。真是一本好書呀!呵呵,這句話見的太多了。好在什么地方呢?聽我慢慢道來。[br][br]從開始接觸js這東西有一年時間了,心頭總是有一些說不出來的苦悶。在論壇里也常常有人這么說。那么苦在何處呢?總是感覺學(xué)的不深入,一些簡單的東西可以做但也是不能得心應(yīng)手。能不能把這種苦再說的具體點(diǎn)兒呢?都說了是“說不出來的苦悶”怎么具體呀?[br][br]何為難言之隱?說不出來,不能具體,不能把問題落到實(shí)處就不能得到解決的辦法。這就是難言之隱!我認(rèn)為這也就是初學(xué)者的“困境”。之所以要用“我認(rèn)為”正好迎合了本文標(biāo)題中的“心得”二字。如果能對大家有幫助我非常高興。[br][br]下面言歸正傳,我經(jīng)過回想和思考總結(jié)出下面幾條初學(xué)者的“難言之隱”大家看看有沒有說到我們的心坎兒上,呵呵。[br][br][b]一、用系統(tǒng)的知識將問題具體化[/b][br][br]我們在學(xué)習(xí)時經(jīng)常會發(fā)現(xiàn)可以用不同的方法來實(shí)現(xiàn)同一個問題。例如,要為元素綁定一個點(diǎn)擊事件可以在html元素上用,我們起初會認(rèn)為這就是綁定事件的方法。[br][br]當(dāng)我們第二次又看到可以將一個函數(shù)傳遞給一個事件來綁定:a.onclick=f1;這時我們又會想原來綁定事件不只有一種方法。[br][br]當(dāng)我們第三次又看到用addachevent("onclick",f1)這種方法綁定事件的時候,你一定會想綁定事件的方法可能不只這三種。而且做一件事沒理由要三種相同的方法,他們之間一定有不同之處?[br][br]那么他們有什么不同之處呢?到底綁定事件有多少種方法呢?當(dāng)你發(fā)現(xiàn)一種方法在ie中不兼容的時候你還會問這到底是為什么呢?是我的語法錯誤了嗎?還是怎么回事。一個又一個的問題結(jié)束之后你只好問自己:“天呀!我什么時候才能學(xué)好javascript呢?!“。[br][br]可能這樣下去你很難學(xué)好js。其實(shí)還要告訴你,你離學(xué)好他并不遠(yuǎn)了,只是你不知道怎么走。原因在哪里?原因就是沒有系統(tǒng)的知識,原因就是沒有讀過《javascript權(quán)威指南》,他會告訴你綁定事件有四種方法,并且有兩種是基本方法,所有瀏覽器都支持他,另外還有兩種高級方法,一種是w3c標(biāo)準(zhǔn)方法,一種是ie標(biāo)準(zhǔn)方法,所以你知道為什么ie不兼容其中的一種高級方法了,對嗎?[br][br]現(xiàn)在事情具體化了,綁定一個事件的時候只需考慮這四種方法,你也不會再有那么多的疑惑了。你也會覺得自己弄懂事件了,下一步你應(yīng)該去弄懂其它問題了,你還會覺得自己在js方面終于有進(jìn)展了,當(dāng)然你還會感覺到走出一個困境了。[br][br][b]二、必需了解javascript的歷史[/b][br][br]你了解js的歷史嗎?我當(dāng)然了解,他原本不叫javascript,他最早不是實(shí)現(xiàn)在ie中的。對,說的很好,可這不是最重要的,知道這個也不會成為高手,你必須了解的更詳細(xì),而且主要是了解功能進(jìn)化方面的歷史。[br][br]就像上面,為什么綁定事件會有那多的方法?為什么獲得一個元素會有那么多的方法?倒底是document.links[]正規(guī)一點(diǎn)?還是getelementsbytagname('a')正規(guī)一點(diǎn)?哪一個兼容性更好?還有多少這樣的方法?[br][br]要知道一個問題就夠頭痛了,十個問題你就無從下手,一百個問題你就會懷疑自己。一千個問題最后又回到那個問題“天呀!我什么時候才能學(xué)好javascript“?呵呵,事情往往就是這樣。解決的方法就是具體化他,去弄懂到底有幾種方法,為什么又有這些方法。這些問題一定會有答案,因?yàn)閖s不是外星人留下的東西,是人創(chuàng)造出來的,而那個人的思維也是有限的,不是嗎?[br][br]當(dāng)你知道document.links[]是遺留的document方法,而且這種遺留方法一共有5個。分別是anchors[],applets[],forms[],images[],links[]的時候有些問題就消失了,當(dāng)你還知道dom標(biāo)準(zhǔn)保留了他們,你還知道所有瀏覽器都支持他們,你還知道他們就是所謂的“0級dom”你又會走出一個“困境”。[br][br][b]三、js有縱橫交錯的知識結(jié)構(gòu)[/b][br][br]js的知識結(jié)構(gòu)是橫向和縱向交錯的,這加大了理解他的難度,對這一點(diǎn)必需有一個清晰的認(rèn)識。下面解釋一下“縱橫交錯”。[br][br]一般的知識都有橫向性。比如從大的方面js分為核心部分和客戶端部分。這是橫向。核心部分又分為詞法結(jié)構(gòu),數(shù)據(jù)類型和值,變量,表達(dá)式和運(yùn)算符,語句,對象和數(shù)組,函數(shù),類,模塊和名字空間,正則表達(dá)式。這也是橫向。[br][br]客戶端部分可以分為bom,dom,事件,樣式,表單等,這些也是橫向的知識結(jié)構(gòu)。[br][br]一門技術(shù)很少用時間作為結(jié)構(gòu),但因?yàn)闉g覽器的發(fā)展是動態(tài)的,不同時期的瀏覽器對js有不同程度的實(shí)現(xiàn),而在不同時間針對當(dāng)時瀏覽器所編寫的網(wǎng)頁不能因?yàn)榧夹g(shù)的發(fā)展就不去考慮他,而且讓所有的網(wǎng)站都隨著技術(shù)的發(fā)展而重新編寫是不可能的,所以js即要發(fā)展升級,也要保留向前的支持。所以就算有了更好的方法也必需保留之前的方法,就有了好多遺留的js屬性和方法,比如“0級dom”在新的w3cdom中得到了保留,從某種程度來講他就是縱向的。[br][br]當(dāng)對知識結(jié)構(gòu)有了清楚的認(rèn)識,會有一個好處就是當(dāng)我要解決一個問題的時候我就能知道我要用的是哪一塊的知識。比如要得到一個元素在文檔中的位置就會知道用的是dom中元素的屬性,要得到鼠標(biāo)指針的位置就要用事件對象的屬性。要獲得一個元素的引用可以用遺留的dom也可以用w3c標(biāo)準(zhǔn)的dom方法。這是件好事。[br][br]其實(shí)上面問題的核心就是系統(tǒng)化和具體化,這是我在學(xué)習(xí)過程中覺得很重要的一點(diǎn)。這一點(diǎn)確實(shí)為我解決了不少疑惑。[br][br]走出初學(xué)困境,我們需要系統(tǒng)的知識和具體化的思想。謝謝你能花時間讀這篇文章希望能對你有幫助。

該文章在 2010/7/22 23:55:56 編輯過
關(guān)鍵字查詢
相關(guān)文章
正在查詢...
點(diǎn)晴ERP是一款針對中小制造業(yè)的專業(yè)生產(chǎn)管理軟件系統(tǒng),系統(tǒng)成熟度和易用性得到了國內(nèi)大量中小企業(yè)的青睞。
點(diǎn)晴PMS碼頭管理系統(tǒng)主要針對港口碼頭集裝箱與散貨日常運(yùn)作、調(diào)度、堆場、車隊、財務(wù)費(fèi)用、相關(guān)報表等業(yè)務(wù)管理,結(jié)合碼頭的業(yè)務(wù)特點(diǎn),圍繞調(diào)度、堆場作業(yè)而開發(fā)的。集技術(shù)的先進(jìn)性、管理的有效性于一體,是物流碼頭及其他港口類企業(yè)的高效ERP管理信息系統(tǒng)。
點(diǎn)晴WMS倉儲管理系統(tǒng)提供了貨物產(chǎn)品管理,銷售管理,采購管理,倉儲管理,倉庫管理,保質(zhì)期管理,貨位管理,庫位管理,生產(chǎn)管理,WMS管理系統(tǒng),標(biāo)簽打印,條形碼,二維碼管理,批號管理軟件。
點(diǎn)晴免費(fèi)OA是一款軟件和通用服務(wù)都免費(fèi),不限功能、不限時間、不限用戶的免費(fèi)OA協(xié)同辦公管理系統(tǒng)。
Copyright 2010-2025 ClickSun All Rights Reserved