摘要:最近在看語(yǔ)言精粹這本書(shū),建立完整的知識(shí)體系。一關(guān)于語(yǔ)言是一門(mén)未在實(shí)驗(yàn)室打磨過(guò)的語(yǔ)言,存在這很多考慮不全面甚至,因此我們很有必要學(xué)習(xí)本書(shū),已達(dá)到去除糟粕,取其精華的效果。則為定義了,為初始化的變量。為對(duì)象,數(shù)組函數(shù)均屬于特殊的對(duì)象。
最近在看JavaScript語(yǔ)言精粹這本書(shū),建立完整的js知識(shí)體系。
一.關(guān)于JavaScript語(yǔ)言
js是一門(mén)未在實(shí)驗(yàn)室打磨過(guò)的語(yǔ)言,存在這很多考慮不全面、甚至bug,因此我們很有必要學(xué)習(xí)本書(shū),已達(dá)到去除糟粕,取其精華的效果。
當(dāng)前JavaScript已成為瀏覽器通用語(yǔ)言,其重要性不言而喻,需要提的一點(diǎn)是,其DOM和BOM編寫(xiě)的十分糟糕,老道稱(chēng)寫(xiě)一本關(guān)于BOM或者DOM精華的書(shū)是一項(xiàng)不可能完成的任務(wù).
優(yōu)點(diǎn):①函數(shù) ②弱類(lèi)型 ③對(duì)象字面量 ④動(dòng)態(tài)對(duì)象
缺點(diǎn):全局變量的編程模式
JavaScript為單線程語(yǔ)言,自上至下依次執(zhí)行,遇到函數(shù)調(diào)用、break語(yǔ)句、return語(yǔ)句可改變程序的執(zhí)行順序。
二.語(yǔ)法
數(shù)據(jù)類(lèi)型:number、Boolean、string、null、undefined、object。
其中number類(lèi)型不區(qū)分整型和浮點(diǎn)型(即1和1.0全等)
Boolean包括true和false(小寫(xiě),大寫(xiě)或其他寫(xiě)法則不是Boolean類(lèi)型)
string:用單引號(hào)或雙引號(hào)包裹的0個(gè)或者多個(gè)字符(其中字符串一旦創(chuàng)建,永遠(yuǎn)無(wú)法改變,string的一些方法只是生成了新字符串或者復(fù)制操作,不會(huì)改變?cè)址?br>null一般用來(lái)聲名空對(duì)象,typeof null值為object。
undefined則為定義了,為初始化的變量。
object為對(duì)象,數(shù)組、函數(shù)均屬于特殊的對(duì)象。
語(yǔ)句:條件語(yǔ)句,循環(huán)語(yǔ)句、break語(yǔ)句(用于循環(huán)語(yǔ)句、switch語(yǔ)句中)、return語(yǔ)句(用于函數(shù)中,終止函數(shù)運(yùn)行)
循環(huán)語(yǔ)句:for語(yǔ)句、while語(yǔ)句、do-while語(yǔ)句(其中for有兩種形式,for-in語(yǔ)句用于對(duì)象的枚舉,使用時(shí)要判斷屬性是否存在 hasOwnProperty檢測(cè))
三、字符串(用單引號(hào)或雙引號(hào)包裹的0個(gè)或者多個(gè)字符)
其中字符串一旦創(chuàng)建,永遠(yuǎn)無(wú)法改變
1、URL中提取key值:(用了字符串中的slice、split方法和數(shù)組中的filter、indexOf方法)
function getURLkey(name){ return decodeURIComponent(window.location.search.slice(1).split("&&").filter((item)=>{return item.indexOf(name)!==-1})[0].split("=")[1]) }
四.對(duì)象(用大括號(hào)包裹的0個(gè)或多個(gè)鍵值對(duì),其中key可為任意字符串,value值為除undefined外的任意值)
對(duì)象為按引用傳遞,創(chuàng)建后不可被復(fù)制。
五.數(shù)組(用方括號(hào)包裹的0個(gè)或多個(gè)用逗號(hào)隔開(kāi)的表達(dá)式)
js的數(shù)組不是嚴(yán)格意義上的數(shù)組,因此效率略低,但其有自己的特點(diǎn),使用方便,含有很多內(nèi)置方法,有l(wèi)ength屬性了, 沒(méi)有數(shù)組越界情況,可自動(dòng)擴(kuò)容.
數(shù)組中的值可以是不同類(lèi)型的
六.函數(shù) (被老道成為js中最出色的設(shè)計(jì),接近完美)
可以被調(diào)用的對(duì)象,有自己的作用域.
函數(shù)的調(diào)用:函數(shù)的調(diào)用,即傳遞程序的運(yùn)行的環(huán)境和參數(shù)給被調(diào)用函數(shù).
根據(jù)this取值和綁定時(shí)機(jī)不同,可分為四種調(diào)用方式:
①方法調(diào)用.對(duì)象才有方法,函數(shù)為對(duì)象中的屬性值, O.test()(方法后跟隨一對(duì)小括號(hào)-調(diào)用符號(hào)),此時(shí),this為調(diào)用的對(duì)象O,運(yùn)行時(shí)綁定.
②函數(shù)調(diào)用.this為全局對(duì)象.(老道稱(chēng)此為js設(shè)計(jì)時(shí)的錯(cuò)誤,即在對(duì)象內(nèi)部調(diào)用函數(shù)時(shí),函數(shù)的this指向全局變量,而非當(dāng)前對(duì)象的內(nèi)部作用域,解決方法that=this)
③構(gòu)造器調(diào)用(不常用,且晦澀).
使用new創(chuàng)建函數(shù),然后調(diào)用.
④apply調(diào)用.
apply方法可傳入兩個(gè)參數(shù),第一個(gè)參數(shù)是需要綁定的this值,第二個(gè)是需要傳入的參數(shù)(數(shù)組形式),call為連續(xù)出入?yún)?shù).
遞歸方法.效率高,速度快,特別是操作DOM文檔.
七.正則表達(dá)式。(高效操作字符串的方法,比string的自帶的方法速度快)
文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請(qǐng)注明本文地址:http://specialneedsforspecialkids.com/yun/101283.html
摘要:如果在初學(xué)一門(mén)語(yǔ)言的時(shí)候第一想到的是問(wèn)別人,是很難取得進(jìn)步的。如果你真想學(xué)好,我有個(gè)大概的自學(xué)軌跡供你們參考。第一步,學(xué)習(xí)的編程。立即可以嘗試的實(shí)例,也可以讓的初學(xué)者馬上看到效果。讀懂別人的代碼是學(xué)習(xí),而改進(jìn)別人的代碼則是創(chuàng)造了。 javascript入門(mén)太容易了,導(dǎo)致幾乎人人隨便看看就能上手,零基礎(chǔ)的人學(xué)個(gè)三五天都能對(duì)外宣稱(chēng)自己掌握了js。可是真正掌握js是一件很難的事情。如果在初學(xué)...
摘要:在有了基礎(chǔ)之后,進(jìn)一步學(xué)習(xí)內(nèi)容包括框架。前端學(xué)習(xí)交流群禁止閑聊,非喜勿進(jìn)。代碼提交前必須做的三個(gè)事情檢查所有變更跑一邊單元測(cè)試手動(dòng)運(yùn)行一遍所有 網(wǎng)站開(kāi)發(fā)開(kāi)發(fā)大致分為前端和后端,前端主要負(fù)責(zé)實(shí)現(xiàn)視覺(jué)和交互效果,以及與服務(wù)器通信,完成業(yè)務(wù)邏輯。其核心價(jià)值在于對(duì)用戶體驗(yàn)的追求。可以按如下思路學(xué)習(xí)系統(tǒng)學(xué)習(xí): 基礎(chǔ)知識(shí): html + css 這部分建議在?w3school 在線教程上學(xué)習(xí),邊...
摘要:在有了基礎(chǔ)之后,進(jìn)一步學(xué)習(xí)內(nèi)容包括框架。前端學(xué)習(xí)交流群禁止閑聊,非喜勿進(jìn)。代碼提交前必須做的三個(gè)事情檢查所有變更跑一邊單元測(cè)試手動(dòng)運(yùn)行一遍所有 網(wǎng)站開(kāi)發(fā)開(kāi)發(fā)大致分為前端和后端,前端主要負(fù)責(zé)實(shí)現(xiàn)視覺(jué)和交互效果,以及與服務(wù)器通信,完成業(yè)務(wù)邏輯。其核心價(jià)值在于對(duì)用戶體驗(yàn)的追求。可以按如下思路學(xué)習(xí)系統(tǒng)學(xué)習(xí): 基礎(chǔ)知識(shí): html + css 這部分建議在?w3school 在線教程上學(xué)習(xí),邊...
摘要:本文最早為雙十一而作,原標(biāo)題雙大前端工程師讀書(shū)清單,以付費(fèi)的形式發(fā)布在上。發(fā)布完本次預(yù)告后,捕捉到了一個(gè)友善的吐槽讀書(shū)清單也要收費(fèi)。這本書(shū)便從的異步編程講起,幫助我們?cè)O(shè)計(jì)快速響應(yīng)的網(wǎng)絡(luò)應(yīng)用,而非簡(jiǎn)單的頁(yè)面。 本文最早為雙十一而作,原標(biāo)題雙 11 大前端工程師讀書(shū)清單,以付費(fèi)的形式發(fā)布在 GitChat 上。發(fā)布之后在讀者圈群聊中和讀者進(jìn)行了深入的交流,現(xiàn)免費(fèi)分享到這里,不足之處歡迎指教...
閱讀 2577·2021-10-25 09:45
閱讀 1239·2021-10-14 09:43
閱讀 2297·2021-09-22 15:23
閱讀 1519·2021-09-22 14:58
閱讀 1934·2019-08-30 15:54
閱讀 3539·2019-08-30 13:00
閱讀 1354·2019-08-29 18:44
閱讀 1571·2019-08-29 16:59