今天是劉小愛(ài)自學(xué)Java的第79天。 感謝你的觀(guān)看,謝謝你。 話(huà)不多說(shuō),開(kāi)始今天的學(xué)習(xí): 一、JavaScript概述JavaScrip和Java到底有什么關(guān)系呢? 令我無(wú)比驚訝的是,就本質(zhì)而言它們竟然半毛錢(qián)關(guān)系都沒(méi)有。 簡(jiǎn)直不敢相信,那你們?yōu)楹伍L(zhǎng)的那么像? 就歷史來(lái)源來(lái)說(shuō)它們還是有一定的淵源的,事實(shí)上JavaScript早期叫LiveScript。 而那個(gè)時(shí)候Java一直都是炙手可熱的狀態(tài),所以L(fǎng)iveScript就被改名成Javascript。 說(shuō)白了這不就是現(xiàn)在典型的「蹭熱點(diǎn)」么? 很多Java程序員想學(xué)門(mén)腳本語(yǔ)言,一看它怎么和Java這么像,很有親切感,那干脆就學(xué)它了。 JavaScrip蹭了Java的熱點(diǎn),從而對(duì)其發(fā)展有了很大的幫助,當(dāng)然其語(yǔ)言本身也很優(yōu)秀,慢慢地也得到了大眾的認(rèn)可。 編程語(yǔ)言排行榜中也一直都是名列前茅的存在,提到前端JavaSrcipt也是一個(gè)繞不開(kāi)的坎。 前幾天學(xué)了HTML,如果說(shuō): HTML的作用主要是創(chuàng)建網(wǎng)頁(yè)的結(jié)構(gòu)。 CSS的作用主要是美化頁(yè)面。 那么JavaScript的作用主要是與用戶(hù)進(jìn)行交互。 JavaScript和Java又有什么區(qū)別?
但是js和Java的注釋格式又是一模一樣的,接下來(lái)我們就仔細(xì)學(xué)習(xí)下js的語(yǔ)法。 二、JavaScript語(yǔ)法1JavaScript的引入其引入方式和CSS很相似,CSS是style標(biāo)簽,而js是script標(biāo)簽。 「①內(nèi)部引入」 直接在HTML文件中編寫(xiě)js代碼,其代表標(biāo)簽為script標(biāo)簽。 在標(biāo)簽內(nèi)編寫(xiě)對(duì)應(yīng)的js語(yǔ)法即可。 其中一個(gè)HTML文件里可以有多個(gè)script。 「②外部引入」 在外部創(chuàng)建一個(gè)專(zhuān)門(mén)的js文件,js代碼都寫(xiě)在里面。 需要時(shí)就在HTML文件中使用script標(biāo)簽中的src屬性引入即可。 <script>標(biāo)簽有src和type兩種屬性:
其中script標(biāo)簽可以放在HTML文件中的任意位置,但一般都會(huì)放在head標(biāo)簽中。 2JavaScript規(guī)范js的加載順序是從上至下的。 「①關(guān)于分號(hào)的編寫(xiě)」 js中每一句后面的分號(hào)是可以省略的,但是為了規(guī)范一般都不會(huì)省略,就和Java中一樣。 因?yàn)槿绻恍兄杏袔拙涞脑?huà),不用分號(hào)會(huì)報(bào)錯(cuò)。 省略分號(hào)的前提必須是一句占用一行。 「②關(guān)于語(yǔ)法報(bào)錯(cuò)」 js中的語(yǔ)法報(bào)錯(cuò)了照樣還能執(zhí)行,這和Java不一樣,Java編譯期間報(bào)錯(cuò)是沒(méi)法運(yùn)行的。 并且更有趣的是,<script>標(biāo)簽之間是獨(dú)立的。 也就是說(shuō)第一個(gè)<script>標(biāo)簽有問(wèn)題,但是第二個(gè)<script>標(biāo)簽沒(méi)問(wèn)題,那么運(yùn)行后第二個(gè)標(biāo)簽里的代碼正常執(zhí)行。 這也行? 3JavaScript變量js的變數(shù)據(jù)類(lèi)型是弱類(lèi)型。什么叫弱類(lèi)型呢? 就是有類(lèi)型,但是不強(qiáng)調(diào)類(lèi)型,具體用代碼來(lái)說(shuō)明「五大原始數(shù)據(jù)類(lèi)型」: js中的變量特有意思,定義都是用var關(guān)鍵字來(lái)修飾的,var也就是variate(變量)的縮寫(xiě)。 并且var關(guān)鍵字不是必須的,可以省略,但為了規(guī)范又不建議省略。 但是它又是有類(lèi)型的,typeof(變量名)可以判斷指定變量的數(shù)據(jù)類(lèi)型。 「①number類(lèi)型」 變量a,將其定義為100,本身沒(méi)有說(shuō)明它是什么類(lèi)型,但是其類(lèi)型就是number類(lèi)型。 如果是在Java中,需要這樣定義:number a=100; 但在js中,只需要記住一個(gè)var關(guān)鍵字就好了。 并且更厲害的是,變量a可以不停地變化數(shù)據(jù)類(lèi)型,這在Java中簡(jiǎn)直是不可想象的。 「②boolean類(lèi)型」 在①中a還是number類(lèi)型,在②中又能重新將其定義成boolean類(lèi)型。 「③string類(lèi)型」 其string類(lèi)型包含了字符串和字符。 字符串之間運(yùn)算也是互相拼接,這和Java中倒是一樣。 「④null類(lèi)型」 null類(lèi)型就是一個(gè)object類(lèi)型,object類(lèi)型沒(méi)有賦值就是一個(gè)空型。 「⑤undefined類(lèi)型」 未初始化的類(lèi)型,不知道是什么類(lèi)型。 就是這個(gè)變量還沒(méi)有被命名過(guò),所以上圖中用了變量b,因?yàn)閍已經(jīng)被賦值過(guò)了。 Java中數(shù)據(jù)類(lèi)型有基本數(shù)據(jù)類(lèi)型和引用數(shù)據(jù)類(lèi)型,在js中也有引用數(shù)據(jù)類(lèi)型。 在Java中一切萬(wàn)物都是對(duì)象,其中Object可以表示一切對(duì)象。 js里面對(duì)象也是Object,使用起來(lái)和Java中創(chuàng)建對(duì)象的方式很像,但也有不同。 關(guān)于js的引用數(shù)據(jù)類(lèi)型,后續(xù)再繼續(xù)學(xué)習(xí)。 最后謝謝你的觀(guān)看。 如果可以的話(huà),麻煩幫忙點(diǎn)個(gè)贊,謝謝你。 |
|
來(lái)自: 劉小愛(ài)v > 《待分類(lèi)》