JavaScript是一種高級(jí)的、解釋型、直譯式腳本語(yǔ)言,是一種基于原型、函數(shù)先行的語(yǔ)言,是一門多范式的語(yǔ)言,它支持面向?qū)ο缶幊?,命令式編程,以及函?shù)式編程。 學(xué)習(xí)javascript難嗎? 說(shuō)實(shí)話,不容易學(xué),沒(méi)HTMl基礎(chǔ)直接學(xué)JavaScript 有點(diǎn)難度。 HTML這門課程如果入門的話不是很難,刻苦點(diǎn)兩三個(gè)月就能搞定。 有HTML基礎(chǔ)的話,只要繼續(xù)刻苦一兩個(gè)月左右JavaScript,才有效果,也視個(gè)人天賦而定。 當(dāng)然也少不了大量練習(xí),要經(jīng)常自己動(dòng)手寫 特效。 要求網(wǎng)上大部分特效,你都能改。 然后自己能寫一些簡(jiǎn)單的特效,就算入門了。 但是想學(xué)到高深那就不容易了,JavaScript 入門后再繼續(xù)學(xué)可以說(shuō)也是有些難度的。
公司主營(yíng)業(yè)務(wù):成都網(wǎng)站制作、成都網(wǎng)站建設(shè)、外貿(mào)營(yíng)銷網(wǎng)站建設(shè)、移動(dòng)網(wǎng)站開發(fā)等業(yè)務(wù)。幫助企業(yè)客戶真正實(shí)現(xiàn)互聯(lián)網(wǎng)宣傳,提高企業(yè)的競(jìng)爭(zhēng)能力。成都創(chuàng)新互聯(lián)是一支青春激揚(yáng)、勤奮敬業(yè)、活力青春激揚(yáng)、勤奮敬業(yè)、活力澎湃、和諧高效的團(tuán)隊(duì)。公司秉承以“開放、自由、嚴(yán)謹(jǐn)、自律”為核心的企業(yè)文化,感謝他們對(duì)我們的高要求,感謝他們從不同領(lǐng)域給我們帶來(lái)的挑戰(zhàn),讓我們激情的團(tuán)隊(duì)有機(jī)會(huì)用頭腦與智慧不斷的給客戶帶來(lái)驚喜。成都創(chuàng)新互聯(lián)推出博山免費(fèi)做網(wǎng)站回饋大家。
很長(zhǎng)時(shí)間以來(lái),JavaScript在我眼里都是編程語(yǔ)言中的二等公民。早先,它經(jīng)常是很多安全問(wèn)題的發(fā)源地,就像是膠水一樣,它能把HTML應(yīng)用與樣式粘到一塊,可沒(méi)有人拿它來(lái)正正規(guī)規(guī)地編寫程序;這樣的情形太普遍了。而Java、Ruby、Python,這些才是真正能用來(lái)編寫程序的語(yǔ)言。
過(guò)去幾年間,我對(duì)JavaScript的態(tài)度有了徹底的改變。JavaScript已經(jīng)“長(zhǎng)大成人”了。我敢保證很多JavaScript開發(fā)人員都不會(huì)認(rèn)同我前面的說(shuō)法,他們會(huì)說(shuō)JavaScript一直都是一個(gè)十分強(qiáng)大、成熟,深得人心的語(yǔ)言?;蛟S他們說(shuō)得沒(méi)錯(cuò),事實(shí)上只要是一門完整的編程語(yǔ)言,就能拿來(lái)編寫程序,也包括BASIC這種濫東西。而一門語(yǔ)言真正有用,必須一方面自身具備很強(qiáng)的表達(dá)能力,另一方面還要有眾多的庫(kù)和開發(fā)工具。顯然,JavaScript的表達(dá)能力早就沒(méi)有問(wèn)題了,即便是創(chuàng)建對(duì)象的方式有點(diǎn)不好讓人接受,其實(shí)問(wèn)題也不大。直到最近,一些極其重要的扭轉(zhuǎn)局面的技術(shù)出現(xiàn)了:jQuery、JSON、Node.js和HTML5。或許JavaScript以前就是一門完善的語(yǔ)言了,但卻是這些重要的相關(guān)技術(shù)(以及其他一些沒(méi)有在這里提及的),讓JavaScript成為了每一個(gè)開發(fā)人員都知道的語(yǔ)言。如果明年你要學(xué)一門新語(yǔ)言的話,那一定就是JavaScript。
潛力無(wú)限的Node.js
說(shuō)Node.js潛力無(wú)限的意思,就是它有可能引發(fā)Web開發(fā)的革命。Node.js是一個(gè)框架,用于構(gòu)建高性能Web應(yīng)用——即使是巨量的請(qǐng)求也能夠迅速而有效地響應(yīng)。雖然Node本身作為一個(gè)底層框架,能夠用于構(gòu)建任何應(yīng)用,但它還是最適合構(gòu)建Web服務(wù)器。它的異步事件驅(qū)動(dòng)模式與傳統(tǒng)的請(qǐng)求-響應(yīng)模式相比,無(wú)疑更適合Web應(yīng)用。
有兩方面因素更讓Node顯得前途無(wú)量。首先,Google在提升JavaScript性能方面掀起了一場(chǎng)革命。這句話的意思并不是說(shuō)你隨時(shí)隨地都可以用上最好的JavaScript引擎(盡管這也是我們一個(gè)美好的期望)。但可以肯定的是,Google在其他競(jìng)爭(zhēng)對(duì)手還沒(méi)有上心的情況下,真的把JavaScript性能當(dāng)成了一回事兒。如此一來(lái),就把Mozilla、Apple、Microsoft、Opera,還有其他瀏覽器開發(fā)商逼到了性能競(jìng)賽的跑道上。結(jié)果導(dǎo)致我們現(xiàn)在使用的JavaScript引擎較之幾年前快了不知道有多少倍,完全有能力運(yùn)行復(fù)雜的大型Web應(yīng)用。
其次,Node有著龐大的開發(fā)人員基礎(chǔ)。不管大家在服務(wù)器端使用的是什么語(yǔ)言,但在客戶端卻鮮有不使用JavaScript的。有的人可能是“剪刀加漿糊”式的東拼西湊,有的人則可能用JavaScript做出了高超的Ajax應(yīng)用,而有的人甚至實(shí)現(xiàn)了全功能的應(yīng)用程序,像Twitter或 Gmail??刹还茉趺凑f(shuō),JavaScript開發(fā)人員的數(shù)量無(wú)疑是非常龐大的。而Doug Crockford等作者更是極力宣傳所有人都應(yīng)該把JavaScript當(dāng)成一門嚴(yán)肅正經(jīng)的編程語(yǔ)言來(lái)看待——盡管它還有不少缺點(diǎn)。
當(dāng)時(shí)當(dāng)下,編寫Node應(yīng)用相對(duì)還是個(gè)“粗”活兒,畢竟它只是一個(gè)底層庫(kù)。想象一下單純使用JavaScript寫代碼,對(duì),就是這種感覺,Node當(dāng)前還是一個(gè)beta版的格局,與Rails或Django這樣成熟的Web開發(fā)框架還沒(méi)法比。這種狀況無(wú)疑會(huì)改變。一些輕量級(jí)的框架,比如Express,已經(jīng)出現(xiàn)了;我堅(jiān)信更多基于Node的全功能框架也將不斷涌現(xiàn)。
前面提到過(guò)一些幾乎完全在瀏覽器中運(yùn)行的高級(jí)Web應(yīng)用。那些都已經(jīng)不算什么新鮮事兒了,Gmail多大了?Google Maps貴庚了?不過(guò),用JavaScript編寫在瀏覽器中運(yùn)行的應(yīng)用的客戶端無(wú)疑是越來(lái)越有吸引力了。HTML5則繼續(xù)推高了人們對(duì)這一趨勢(shì)的預(yù)期。
HTML5其實(shí)就是JavaScript
我不知道已經(jīng)說(shuō)過(guò)多少次了,HTML5實(shí)際上并沒(méi)有多少與HTML有關(guān),它其實(shí)就是JavaScript。HTML本身有什么變化?不過(guò)一些新標(biāo)簽而已,況且也都很好理解。HTML5的威力在于讓你能用JavaScript來(lái)創(chuàng)建這些標(biāo)簽。假如沒(méi)有后臺(tái)代碼通過(guò)Canvas來(lái)創(chuàng)建動(dòng)畫、游戲,或者通過(guò)它來(lái)實(shí)現(xiàn)一些數(shù)據(jù)的可視化,這個(gè)標(biāo)簽也沒(méi)有大用處。從瀏覽器開始支持Canvas開始,我已經(jīng)看到了Asteroids(行星游戲)的上百個(gè)實(shí)現(xiàn),那都是開發(fā)人員為熟悉這個(gè)新特性所做的練習(xí)。有的比較粗糙一些,而有的則極其精美。這些完全都要?dú)w功于JavaScript。
由此可見,HTML5并不是在以尖括號(hào)為特征的標(biāo)簽語(yǔ)言的一次大的改進(jìn),其實(shí)質(zhì)是賦予了JavaScript更強(qiáng)大的能力。WebGL庫(kù)(當(dāng)前還羽翼未豐)支持在HTML5的畫布中繪制實(shí)時(shí)的3D圖形。HTML5的地理位置支持在瀏覽器中實(shí)現(xiàn)LBS(Location Based Service)應(yīng)用——手機(jī)的基本配置。而持久存儲(chǔ)以及離線功能則為開發(fā)能與桌面應(yīng)用媲美,但卻在瀏覽器中運(yùn)行的全功能應(yīng)用奠定了基礎(chǔ)。目前,就連增加多點(diǎn)觸摸事件的實(shí)驗(yàn)性的庫(kù)也已經(jīng)出現(xiàn)了。凡此種種,無(wú)一不是實(shí)實(shí)在在的JavaScript特性。HTML5只是為這些高級(jí)功能的發(fā)揮提供了舞臺(tái)。
退一步講,不依賴于HTML5的瀏覽器庫(kù)開發(fā)庫(kù)也取得了長(zhǎng)足的進(jìn)步。長(zhǎng)久以來(lái),JavaScript一直都是在HTML中實(shí)現(xiàn)動(dòng)態(tài)效果的不二之選??蓛蓚€(gè)問(wèn)題遲遲得不到解決:一是瀏覽器兼容性問(wèn)題,二是直接操作DOM太麻煩。jQuery讓這兩個(gè)問(wèn)題霎那間消失得無(wú)影無(wú)蹤,這個(gè)庫(kù)已經(jīng)成為現(xiàn)代基于瀏覽器的客戶端開發(fā)的基本配置。不過(guò),并非只有jQuery。Protovis、D3,都可以讓你直接在瀏覽器中創(chuàng)建復(fù)雜的交互性數(shù)據(jù)可視化效果,有史以來(lái)第一次讓瀏覽器成為了展示數(shù)據(jù)的一個(gè)重要工具。
JavaScript與數(shù)據(jù)庫(kù),編譯器與語(yǔ)言
就連數(shù)據(jù)庫(kù)里都開始廣泛使用JavaScript了!當(dāng)前如火如荼的NoSQL運(yùn)行的三只領(lǐng)頭羊:CouchDB、MongoDB和Riak,都是“文檔數(shù)據(jù)庫(kù)”。它們保存的不是表,而是文檔。這幾個(gè)數(shù)據(jù)庫(kù)所謂的“文檔”,其實(shí)就是JSON文檔,而不是Word或Excel。(Riak除了JSON文檔,還支持XML和純文本。)JSON已經(jīng)成為一種被廣泛采用的數(shù)據(jù)交換格式(所有現(xiàn)代的編程語(yǔ)言幾乎全都有解析JSON的庫(kù)),不過(guò)請(qǐng)注意,JSON實(shí)際上不就是一種序列化JavaScript對(duì)象的格式嘛!因此,雖然你可以在任何語(yǔ)言中使用JSON,但在JavaScript開發(fā)中使用它則是再自然不過(guò)的事了。況且,JSON這個(gè)格式成為一種跨語(yǔ)言的標(biāo)準(zhǔn),而不是Python、Ruby或Java等語(yǔ)言的序列化格式,這個(gè)事實(shí)本身足以說(shuō)明JavaScript將在更加廣闊的舞臺(tái)上大顯身手。還不僅僅如此,上述三個(gè)數(shù)據(jù)庫(kù)都內(nèi)置了支持JavaScript查詢的能力。未來(lái)幾年,更多的人都將會(huì)驚訝地發(fā)現(xiàn),JavaScript和JSON已經(jīng)內(nèi)置到了其他應(yīng)用程序里啦!
現(xiàn)在很多小伙伴喜歡在互聯(lián)網(wǎng)上找視頻資料學(xué)習(xí)javascript,但是光看視頻你是不可能學(xué)會(huì)javascript的,沒(méi)有人指導(dǎo)你,而且很多視頻已經(jīng)過(guò)時(shí)了?并沒(méi)有什么用!??如果你真的想學(xué)習(xí)javascript這門技術(shù),你可以來(lái)這個(gè)群,前面是5柒3,中間是82〇,最后是49〇,?在這里有最新的javascript課程?免費(fèi)學(xué)習(xí)?也有很多人指導(dǎo)你?進(jìn)步?不需要你付出什么?只要你有一顆學(xué)習(xí)的心就可以了?不是愿意學(xué)習(xí)或者自認(rèn)不需要學(xué)習(xí)的就不要加了。
JavaScript時(shí)代的序幕才剛剛拉開。在今年的JSConf上,一個(gè)核心主題就是“JavaScript到JavaScript的編譯器”,也被人們看成是未來(lái)的一個(gè)主要趨勢(shì)。Google在“編譯生成JavaScript代碼”方面是首開先河者。據(jù)我所知,GWT(Google Web Toolkit)應(yīng)該是通過(guò)編譯(從Java代碼)生成JavaScript代碼的第一個(gè)框架。以前我對(duì)GWT并沒(méi)有太重視,只是覺得它是一個(gè)致力于拯救那些Java程序員的框架,好讓他們不必因?yàn)椋▽W(xué)習(xí))編寫JavaScript而浪費(fèi)時(shí)間。可是,GWT在編譯過(guò)程中對(duì)JavaScript做了那么多的優(yōu)化,簡(jiǎn)直是太神了。Closure就是一個(gè)“JavaScript到JavaScript的編譯器”,能夠?qū)崿F(xiàn)同樣級(jí)別的優(yōu)化。Traceur,這是幾個(gè)星期前才冒出來(lái)的一個(gè)框架,通過(guò)它能夠試驗(yàn)JavaScript的新特性,換句話說(shuō),它可以把帶有實(shí)驗(yàn)性語(yǔ)言特性的JavaScript代碼編譯成可以在所有現(xiàn)代平臺(tái)中運(yùn)行的JavaScript代碼。
最后,我們也開始看到了當(dāng)初Java大旗下JVM語(yǔ)言的蓬勃景象:各種語(yǔ)言都在致力于編譯成JavaScript!其中有一些語(yǔ)言比較有意思,像Coffeescript和Kaffeine,它們?cè)陲L(fēng)格上酷似JavaScript,但更關(guān)注彌補(bǔ)JavaScript的一些不夠完善的地方。是不是覺得JavaScript的對(duì)象模型特有意思,可怎么看怎么有點(diǎn)笨笨滴,有木有?是不是一想到基于原型創(chuàng)建一個(gè)實(shí)際的對(duì)象都需要反反復(fù)復(fù)地定義這定義那,就望而卻步了?Coffeescript對(duì)此作了明顯的改進(jìn)。除了完善對(duì)象模型,Coffeescript還添加了類似列表解析(comprehensions)的新特性,去掉了大部分花括號(hào)。就像在Python中一樣,要使用縮進(jìn)來(lái)區(qū)分代碼塊。
未來(lái)的Web服務(wù)器、取之不盡的客戶端庫(kù)、HTML5、數(shù)據(jù)庫(kù),乃至基于JavaScript的語(yǔ)言——我一睜眼就能看到JavaScript!假如你曾經(jīng)對(duì)JavaScript敬而遠(yuǎn)之,今年就該學(xué)習(xí)它了。沒(méi)有理由,真的,再不學(xué),恐怕你再也沒(méi)機(jī)會(huì)趕超別人了!
JavaScript作為目前比較主流的語(yǔ)言,其學(xué)習(xí)起來(lái)是有一定難度的,所以對(duì)于孩子的年齡也是有一定的限制。以童程童美為例,我們JavaScript的課程建議學(xué)習(xí)年齡是從8歲開始,這個(gè)年齡階段,孩子有了一些數(shù)學(xué)、英語(yǔ)的基礎(chǔ),更方便孩子學(xué)習(xí)。如果目前孩子還不足8歲,可以考慮學(xué)習(xí)Scratch語(yǔ)言。
童程童美少兒編程課程,面向6-18歲青少年兒童,依托達(dá)內(nèi)教育集團(tuán)16年IT編程教育經(jīng)驗(yàn)和上千名精英教研團(tuán)隊(duì)等教育資源優(yōu)勢(shì),研發(fā)出一套系統(tǒng)的少兒編程課程體系,內(nèi)容涵蓋少兒?jiǎn)⒚删幊蹋⊿cratch)和少兒趣味編程(JavaScript、HTML、CSS、Java等),能夠?qū)崿F(xiàn)不僅僅讓小孩學(xué)會(huì)編程,更希望通過(guò)他們的中小學(xué)階段的培訓(xùn)激發(fā)他們對(duì)程序的認(rèn)識(shí)和熱愛,激發(fā)他們對(duì)計(jì)算機(jī)和it互聯(lián)網(wǎng)的認(rèn)識(shí)和熱愛。同時(shí)培養(yǎng)編程思維,提高中國(guó)孩子的綜合能力和素質(zhì)。課程流動(dòng)課堂目前以走進(jìn)全國(guó)130多所中小學(xué)公立校,受到教育界和學(xué)生家長(zhǎng)的高度認(rèn)可。
目前,大部分平臺(tái)都有瀏覽器,而現(xiàn)在的瀏覽器幾乎全部是運(yùn)行 JavaScript 代碼的,所以只要是有瀏覽器的地方就是 JavaScript 開發(fā)者施展拳腳的平臺(tái)
Node 的出現(xiàn)給開發(fā)者帶來(lái)的是更多的接口,通過(guò) Node 可以輕易的調(diào)用 ai.baidu.com 等 API 提供者的接口,從而實(shí)現(xiàn)更多功能
javascript是一門腳本編程語(yǔ)言。一般至少要學(xué)1~2個(gè)月,才有效果,也視個(gè)人天賦而定。當(dāng)然也少不了大量練習(xí),要經(jīng)常自己動(dòng)手寫 特效。要求網(wǎng)上大部分特效,你都能改。然后自己能寫一些簡(jiǎn)單的特效,就算入門了。但要精通的話就得花些時(shí)間了,最好參與些項(xiàng)目,很多技巧不通過(guò)項(xiàng)目這樣比較大的歷練是用不上的。千鋒軟件開發(fā)培訓(xùn)課程的授課模式采用全程面授,講師成本雖高,但是效果卻是顯著的,和學(xué)員面對(duì)面溝通,了解到學(xué)員在學(xué)習(xí)過(guò)程中遇到的問(wèn)題,動(dòng)態(tài)地調(diào)整授課方式。
千鋒教育就有線上免費(fèi)的軟件開發(fā)公開課,。
JavaScript是腳本語(yǔ)言,主要用來(lái)編寫動(dòng)態(tài)網(wǎng)頁(yè)。建議先從基本的HTML和CSS學(xué)起,學(xué)學(xué)靜態(tài)頁(yè)面布局。然后在網(wǎng)上找一些javascript入門級(jí)的視頻教程,按照教程一步步由淺入深按部就班的學(xué)習(xí)就OK。
編程一方面靠的是邏輯思維,另一方面也是一個(gè)孰能生巧的過(guò)程,只要多敲幾遍代碼,將基礎(chǔ)知識(shí)融會(huì)貫通,肯定能夠?qū)W好的。千鋒教育集團(tuán)目前已與國(guó)內(nèi)4000多家企業(yè)建立人才輸送合作,與500多所大學(xué)建立實(shí)訓(xùn)就業(yè)合作,每年為各大企業(yè)輸送上萬(wàn)名移動(dòng)開發(fā)工程師,每年有數(shù)十萬(wàn)名學(xué)員受益于千鋒教育組織的技術(shù)研討會(huì)、技術(shù)培訓(xùn)課、網(wǎng)絡(luò)公開課及免費(fèi)教學(xué)視頻。
說(shuō)實(shí)話,不好學(xué),沒(méi)HTMl基礎(chǔ)有點(diǎn)難度,JavaScript簡(jiǎn)稱JS,之前的基礎(chǔ)就是HTML,HTML這門課程如果入門的話不是很難,刻苦點(diǎn)一月到兩月就能搞定,有HTML基礎(chǔ)的話,只要繼續(xù)刻苦一個(gè)月左右JS就能入門,但是想學(xué)到高深那就不容易了,js入門后在繼續(xù)學(xué)可以說(shuō)也是有些難度的??傊日莆誋TML,這是一個(gè)基礎(chǔ),正如你說(shuō)話要先從aoe開始一樣,HTML也很容易學(xué)的
HTML推薦書籍:深入淺出HTML和CSS
JS推薦書籍:《javascript入門經(jīng)典》
這些書籍可以幫助你怎么學(xué)習(xí),其實(shí)不止看書,你也可以看看視頻,多看視頻講解學(xué)習(xí)可以讓你少走很多彎路,節(jié)省不少時(shí)間。遇見問(wèn)題,常百度一下,現(xiàn)在百度只有你想不到的,沒(méi)有你查不到的,沒(méi)有你要的答案,也能查到相關(guān)的,何況可以提問(wèn)嘛……
人就是在不斷的問(wèn)題中解決問(wèn)題,發(fā)現(xiàn)新的問(wèn)題,繼續(xù)解決問(wèn)題,這樣自己的自學(xué)能力和技術(shù)能夠得到很大的提升,關(guān)鍵就是不懂一定馬上問(wèn),千萬(wàn)不要隨便拖,這樣進(jìn)步才叫快……
還有補(bǔ)充一下,學(xué)習(xí)重在實(shí)踐,因?yàn)橹挥袑?shí)踐你才能更好的發(fā)現(xiàn)自己的問(wèn)題,一個(gè)問(wèn)題解決了,一次不記得,下次繼續(xù)做的時(shí)候再手打一次,但是別抄之前自己寫過(guò)的代碼,除非你覺得自己這段代碼已經(jīng)掌握了,這樣為了節(jié)省時(shí)間才抄,否則還是練練手最好,,萬(wàn)變不離其宗——熟能生巧……
如果你精通了,那就好辦了,一個(gè)網(wǎng)站可能就被你開發(fā)出來(lái),然后就不愁找不到好工作了,至于你認(rèn)為學(xué)到什么地步算精通,這你自己在學(xué)習(xí)中就可以感受到自己的能力,說(shuō)的夠多了,一時(shí)說(shuō)不完,就這樣,最后祝你成功,嘎嘎嘎嘎……