WEB課堂隨筆—Javascript基礎(chǔ)

經(jīng)過一個月的時間已經(jīng)結(jié)束了第一階段的學(xué)習(xí),接下來就是進入到最費腦子的第二階段—JS的學(xué)習(xí)疆前。
把網(wǎng)頁分為3部分的話肚逸,html代表結(jié)構(gòu)爷辙,CSS代表樣式那么JS就代表網(wǎng)頁的行為‰伲可以理解為女媧造人時捏的一個個泥人就是我們的網(wǎng)頁膝晾,但是沒有女媧吹的那口氣泥人是不會動的,當(dāng)女媧向泥人吹了那口仙氣一個個小泥人就可以活蹦亂跳了务冕。我們的JS就相當(dāng)于那一口仙氣讓我們的網(wǎng)頁靈活起來血当。

1JavaScript的歷史

javascript在設(shè)計之初只是為了做表單的驗證,但是如今已經(jīng)成為了一種功能全面的變成語言禀忆。JAVA和JavaScript有什么關(guān)系呢臊旭?答:毫無關(guān)系。JavaScript最初是NetScape公司在1995年著手研發(fā)的在當(dāng)時叫做liveScript的腳本語言箩退。公司為了營銷目的搭上了當(dāng)時媒體熱炒的Java的順風(fēng)車臨時更名為JavaScript巍扛。但是Javascript1.0獲得了巨大的成功。但是后來1996年微軟公司進入瀏覽器領(lǐng)域推出了JScript開始和NetScript爭當(dāng)博主地位乏德。他們爭奪最終苦的是開發(fā)者,因為沒有一個標(biāo)準的存在。業(yè)內(nèi)的吐槽也日益嚴重喊括,終于多方聯(lián)合共同制定了一個標(biāo)準胧瓜,這個標(biāo)準就是ECMAScript(歐洲計算機制造商協(xié)會

2JavaScript的組成

1.ECMAScript:ECMAScript是一個標(biāo)準,它規(guī)定了語法郑什,類型府喳,語句。關(guān)鍵字蘑拯,保留子钝满。操作符,對象申窘⊥溲粒可以說它就是一個法律。
2.BOM(瀏覽器對象模型):可以訪問瀏覽器窗口的對象模型剃法,對瀏覽器窗口進行操作碎捺。
3.DOM(文檔對象類型):DOM把整個頁面都映射成一個多層的節(jié)點結(jié)構(gòu)〈蓿可以說整個是整個HTML文檔

3如何編寫和運行JS

JS也是一種腳本語言收厨,它也可以有兩種方式在HTML頁面引入,一種是外聯(lián)一種內(nèi)聯(lián)优构。
1.外聯(lián)的寫法:
<script src=""></>
2.內(nèi)部寫法:
<script>
//在標(biāo)簽內(nèi)寫腳本
</script>
3.錯誤的寫法:
<script src="">
//在標(biāo)簽內(nèi)寫腳本
</>
4.向頁面打印內(nèi)容:
document.write("Hellow word")
5.也可以直接解析標(biāo)簽
document.write("<strong>hellow word</strong>")
同樣用到特殊字符時也需要轉(zhuǎn)義字符

4變量

1.變量的數(shù)據(jù)類型
數(shù)字類型(number):1234567890
字符類型(string):被單引號雙引號包裹的部分都是字符型
未定義類型(undefined):當(dāng)變量被聲明卻沒有被賦值時
布爾類型(boolean):true诵叁,false(真,假)
對象類型(object):{}
數(shù)組類型(array):[]
其中數(shù)組類型是爭議最大的類型钦椭,有人說它是獨立的類型有人說它應(yīng)該劃分到對象類型里
2.變量的命名規(guī)則拧额。

第一前綴就能表達出變量的類型
image.png

第二開頭必須為字母或者$或者_
第三關(guān)鍵字和保留字不能作為變量名

關(guān)鍵字:以下這些關(guān)鍵字用于執(zhí)行特定操作。按照規(guī)則玉凯,關(guān)鍵字也是語言保留的势腮,不能用作標(biāo)識符


image.png

保留字:未來可能作為關(guān)鍵字存在


image.png

5運算符

JS的運算符分為:算數(shù)、賦值漫仆、關(guān)系捎拯、邏輯。
1:算數(shù)運算符:+加 -減 乘 /除 %取余
var a = 1;
var b = 2;
a+b=3
a-b=-1
a
b=2
a/b=0.5
a%b=1
這里跟數(shù)學(xué)的運算方法一樣盲厌。但是:
var a="1",b="2";
a * b = 2
a / b = 0.5
a - b = -1
a + b = 12
+號有兩層意思第一層當(dāng)左右都為number類型時它就是加法運算署照,當(dāng)有一邊是字符型那么就變成了連接符。這里就用到了數(shù)據(jù)類型的轉(zhuǎn)換:強制轉(zhuǎn)換和隱形轉(zhuǎn)換吗浩。等會就要說道建芙。
2.賦值運算符:= += -= *= /= %=

image.png

3.關(guān)系運算符:< <= > >= == !== ===
image.png

4.邏輯運算符:&& || !
image.png

用數(shù)學(xué)里面學(xué)的說就是
與(and):同假為假懂扼。意思是只有兩個都為假時才為假禁荸。
或(or):同真為真右蒲。意思是只有都為真時才為真。
非(8鲜臁)取反面瑰妄,真就是假,假就是真映砖。
運算順序跟數(shù)學(xué)一樣间坐。

6自增自減運算

運算符:++ --
a++表示在a原有的基礎(chǔ)加1
a--表示在a原有的基礎(chǔ)上減1
感覺很好理解不就是自增自減嗎,其實不然邑退。那么++a和--a又是多少竹宋?
var a =1;
console.log(a)
這個打印結(jié)果為1,毫無疑問地技。

var b =1;
b++;
console.log(b++);
這個打印結(jié)果為2蜈七。因為++意思就是自增1,也毫無疑問乓土。

var c =1;
console.log(c++);
console.log(c);
看到這題估計就有好多人認為跟上面一樣也是自增1宪潮,所以l兩個答案都是2。其實正確的答案是上面的是1趣苏,下面的是2狡相。這是為什么呢?因為我們?yōu)g覽器在解析我們的代碼是都是遵循從上到下從左到右的順序解析食磕。
在變量b那題尽棕,我們先給變量b賦值1,然后我們進行了累加計算彬伦。這時b變成了2滔悉。最后我們把b打印出來,那么打印出來的結(jié)果就是2单绑。
在變量c這題我們在從上往下回官,從左到又的順序解析看看。首先也一樣給變量c賦值1搂橙。然后我們開始打印打印順序是從左到右歉提,所以先把c打印出來(因為++是在c的后面還沒來的急累加c就被打印了出來)。然后打印過后開始了累加最后再次打印c的值区转,這時c就變成了2苔巨。

var d =1;
console.log(++d);
那么這題也按照解析順序來看就好理解了。先賦值废离,然后打印的時候先進行了自增(因為++在前面)侄泽。接著打印出了d的值是2。

拓展:
var k =0;
console.log(k++ + ++k +k+k++)

首先k的初始值為0蜻韭,所以k++時是0悼尾,然后k開始自增k變成了1柿扣,然后加上++k,因為++在前面所以先在增加1诀豁,++k就變成了2窄刘,然后在加k(++k后面沒運算符,所以k還是2)舷胜,然后在加k(k還是2),然后后面還有++瀏覽器就還沒來的急解析就打印了出來結(jié)果就是6(0+2+2+2)活翩。雖然沒打印出來后面的++但是我們也要知道最后k變?yōu)榱?烹骨,后面如果還有k就是以3進行計算了。
自增與自減方法一樣材泄。

7數(shù)據(jù)類型轉(zhuǎn)換

數(shù)據(jù)類型轉(zhuǎn)換分為強制類型轉(zhuǎn)換和隱性轉(zhuǎn)換沮焕。
1:隱性轉(zhuǎn)換,在上面說過拉宗,當(dāng)字符與數(shù)字相加時+變?yōu)榱诉B接符峦树,這里瀏覽器在進行解析的時候就默認把number類型轉(zhuǎn)換成了字符類型。這就是隱形轉(zhuǎn)換旦事。
2:強制轉(zhuǎn)換魁巩,

  • 轉(zhuǎn)換為字符型:toString()
    強制把類型轉(zhuǎn)換為字符型。
    var str = 123;
    str.toString();

  • 轉(zhuǎn)換成數(shù)值:
    parseInt();轉(zhuǎn)換成整數(shù)姐浮,可以接受兩個值
    parseFloat();轉(zhuǎn)換成浮點數(shù)

    兩者的不同:
    parseInt();該方法從左向右谷遂,檢測數(shù)字或字符串,當(dāng)?shù)谝淮伟l(fā)現(xiàn)一個不為數(shù)字的字符時卖鲤,把之前的所有進行返回肾扰,如果字符串中第一個就不是數(shù)字,那么返回NaN
    例如:parseInt("123abc");a做為第一個不是數(shù)字的字符蛋逾;返回a之前的所有值集晚,則該方法返回123
    parseInt("abc123");a做為第一個不是數(shù)字的字符,且處在字符串的第一位区匣,則判定該字符串無法轉(zhuǎn)換為數(shù)字返回NaN
    parseFloat();該方法檢索數(shù)字或字符串后面第一個.后的不為數(shù)字的字符偷拔,并對之前所有的結(jié)果進行返回,如果第一個字符不為數(shù)字沉颂,那么返回NaN
    例如:parseFloat(“123.456");返回123.456
    parseFloat(“123.4a56");返回123.4
    parseFloat(“123.00");返回123
    parseFloat(“123.0a56");返回123
    關(guān)于浮點數(shù):Math.round()四舍五入取整浮點數(shù)条摸。
    num.toFixed(n)保留幾位小數(shù)。

  • Number()為強制數(shù)據(jù)類型轉(zhuǎn)換:
    Number("hello world"); //NaN
    Number("123456"); //123456

8NAN的概念

NaN:是一種特殊的number類型铸屉,代表意外轉(zhuǎn)換成的數(shù)字钉蒲,NAN和任何東西都不等,甚至都不等于自己彻坛。
isNaN()函數(shù)顷啼,該函數(shù)判斷括號內(nèi)的值是否是NaN踏枣,是就返回true,不是就返回false钙蒙。當(dāng)運算結(jié)果出現(xiàn)了NAN時一定要注意是不是前面的變量獲取出錯了茵瀑。

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個濱河市躬厌,隨后出現(xiàn)的幾起案子马昨,更是在濱河造成了極大的恐慌,老刑警劉巖扛施,帶你破解...
    沈念sama閱讀 210,914評論 6 490
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件鸿捧,死亡現(xiàn)場離奇詭異,居然都是意外死亡疙渣,警方通過查閱死者的電腦和手機匙奴,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 89,935評論 2 383
  • 文/潘曉璐 我一進店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來妄荔,“玉大人泼菌,你說我怎么就攤上這事±沧猓” “怎么了哗伯?”我有些...
    開封第一講書人閱讀 156,531評論 0 345
  • 文/不壞的土叔 我叫張陵,是天一觀的道長刷钢。 經(jīng)常有香客問我笋颤,道長,這世上最難降的妖魔是什么内地? 我笑而不...
    開封第一講書人閱讀 56,309評論 1 282
  • 正文 為了忘掉前任伴澄,我火速辦了婚禮,結(jié)果婚禮上阱缓,老公的妹妹穿的比我還像新娘非凌。我一直安慰自己,他們只是感情好荆针,可當(dāng)我...
    茶點故事閱讀 65,381評論 5 384
  • 文/花漫 我一把揭開白布敞嗡。 她就那樣靜靜地躺著,像睡著了一般航背。 火紅的嫁衣襯著肌膚如雪喉悴。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 49,730評論 1 289
  • 那天玖媚,我揣著相機與錄音箕肃,去河邊找鬼。 笑死今魔,一個胖子當(dāng)著我的面吹牛勺像,可吹牛的內(nèi)容都是我干的障贸。 我是一名探鬼主播,決...
    沈念sama閱讀 38,882評論 3 404
  • 文/蒼蘭香墨 我猛地睜開眼吟宦,長吁一口氣:“原來是場噩夢啊……” “哼篮洁!你這毒婦竟也來了?” 一聲冷哼從身側(cè)響起殃姓,我...
    開封第一講書人閱讀 37,643評論 0 266
  • 序言:老撾萬榮一對情侶失蹤袁波,失蹤者是張志新(化名)和其女友劉穎,沒想到半個月后辰狡,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體锋叨,經(jīng)...
    沈念sama閱讀 44,095評論 1 303
  • 正文 獨居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 36,448評論 2 325
  • 正文 我和宋清朗相戀三年宛篇,在試婚紗的時候發(fā)現(xiàn)自己被綠了。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片薄湿。...
    茶點故事閱讀 38,566評論 1 339
  • 序言:一個原本活蹦亂跳的男人離奇死亡叫倍,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出豺瘤,到底是詐尸還是另有隱情吆倦,我是刑警寧澤,帶...
    沈念sama閱讀 34,253評論 4 328
  • 正文 年R本政府宣布坐求,位于F島的核電站蚕泽,受9級特大地震影響,放射性物質(zhì)發(fā)生泄漏桥嗤。R本人自食惡果不足惜须妻,卻給世界環(huán)境...
    茶點故事閱讀 39,829評論 3 312
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望泛领。 院中可真熱鬧荒吏,春花似錦、人聲如沸渊鞋。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,715評論 0 21
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽锡宋。三九已至儡湾,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間执俩,已是汗流浹背徐钠。 一陣腳步聲響...
    開封第一講書人閱讀 31,945評論 1 264
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留奠滑,地道東北人丹皱。 一個月前我還...
    沈念sama閱讀 46,248評論 2 360
  • 正文 我出身青樓妒穴,卻偏偏與公主長得像,于是被迫代替她去往敵國和親摊崭。 傳聞我的和親對象是個殘疾皇子讼油,可洞房花燭夜當(dāng)晚...
    茶點故事閱讀 43,440評論 2 348

推薦閱讀更多精彩內(nèi)容