1.JavaScript概述
-
什么是JavaScript
簡(jiǎn)稱JS,是一種運(yùn)行于JS解釋器或執(zhí)行引擎中的腳本代碼,是一種瀏覽器解釋型的語(yǔ)言
主要用來(lái)實(shí)現(xiàn)頁(yè)面的交互與動(dòng)態(tài)效果 -
JS的組成
核心語(yǔ)法 ECMAScript 規(guī)范了JS的基本語(yǔ)法
瀏覽器對(duì)象模型-BOM
Browser Object Model,提供了一系列操作瀏覽器的方法
文檔對(duì)象模型 -DOM
Document Object Model . 提供了一系列操作文檔的方法
2.JS使用方式
-
在元素標(biāo)簽中綁定JS代碼,主要指JS事件
事件:用戶在元素上所激發(fā)的行為操作(單擊)
語(yǔ)法:< 標(biāo)簽 onclick = "JS 操作" >
JS 操作如果涉及代碼非常多,一般會(huì)抽離出來(lái)單獨(dú)寫在JS文件中,如果是簡(jiǎn)單的代碼,可以以屬性值字符串的形式書寫
console.log("在控制臺(tái)中輸出一句話");
-
將JS代碼嵌套在文檔中,使用
語(yǔ)法:< script > JS 代碼 < / script >
注意:標(biāo)簽可以書寫在文檔的任意位置,書寫多次,但是不同的位置會(huì)影響代碼最終的執(zhí)行效果(一般寫在末尾)
特點(diǎn):
網(wǎng)頁(yè)加載到標(biāo)簽時(shí)就會(huì)執(zhí)行內(nèi)部的JS代碼< script > console . log ( '' ) ; //在頁(yè)面中輸出,會(huì)重寫網(wǎng)頁(yè)主體內(nèi)容 document . write ( '' ) ; < / script >
-
外部鏈接
語(yǔ)法:
創(chuàng)建外部的JS文件.js
在文檔中使用
src
引入的外部資源是網(wǎng)頁(yè)加載所必須的一部分,網(wǎng)頁(yè)加載src文件時(shí),會(huì)等待文件加載完畢再執(zhí)行后面的代碼
href 網(wǎng)頁(yè)
在加載href文件時(shí),不會(huì)等待加載完畢,邊加載邊向后執(zhí)行
注意:在JS 的引入標(biāo)簽中常用操作:
alert(' ');
普通的網(wǎng)頁(yè)彈框
prompt(' ');
接收用戶輸入的彈框,返回用戶輸入的內(nèi)容
document.write('
hello
'); 1 在使用事件方式寫入時(shí),會(huì)重寫網(wǎng)頁(yè)內(nèi)容(事件涉及網(wǎng)頁(yè)刷新),2 可以識(shí)別HTML標(biāo)簽,腳本代碼可以在文檔任何地方書寫,如果是普通寫入(不涉及事件),區(qū)分代碼的書寫位置,在當(dāng)前位置中插入,如果是在head中嵌入,內(nèi)容會(huì)作為body的首行內(nèi)容顯示,
console.log();
控制臺(tái)輸出,多用于代碼調(diào)試
3.基礎(chǔ)語(yǔ)法
-
JS 是由語(yǔ)句組成的
JS語(yǔ)句可以由運(yùn)算符,關(guān)鍵字,表達(dá)式組成
JS語(yǔ)句必須以英文分號(hào)結(jié)束;
JS中嚴(yán)格區(qū)分大小寫
console.log()
:正確寫法
Console.log()
:錯(cuò)誤寫法
所有涉及的標(biāo)點(diǎn)符號(hào),必須使用英文的 -
JS中的注釋
單行注釋 //
多行注釋 /* 注釋文本 */
4.JS的變量與常量
-
變量
使用關(guān)鍵字 var 進(jìn)行聲明
聲明:var 變量名;
賦值:變量名 = 值;
聲明的同時(shí)賦值
var 變量名 = 值;
et:
聲明一個(gè)變量 uname,取值 ‘韓梅梅’
var uname = ‘韓梅梅’;
輸出變量的值
console.log(uname);
document.write(uname);
alert(uname);
聲明變量時(shí),關(guān)鍵字 var 可以省略,不建議省略,容易出問(wèn)題
變量如果只聲明,未賦值, var a; 變量默認(rèn)值為 undefined
-
常量
一經(jīng)聲明就不允許再被修改的數(shù)據(jù)就是常量( 常量在聲明的同時(shí)必須賦值 )
語(yǔ)法:const 常量名 = 值;
為了與變量名區(qū)分,常量名一般采用全大寫的方式操作小數(shù)位
保留小數(shù)點(diǎn)后n位
toFixed(r);
使用: var num = 3.1415926 ; //保留當(dāng)前變量小數(shù)點(diǎn)后兩位 var res = num . toFixed ( 2 ) ; 或者 num = num . toFixed ( 2 ) ;
5.數(shù)據(jù)類型
-
number 類型
數(shù)字類型,表示32位的整數(shù)或者是64位的浮點(diǎn)數(shù),1字節(jié) = 8位,整數(shù)占4字節(jié),浮點(diǎn)數(shù)占8字節(jié)
參照c語(yǔ)言 -
字符串類型
string 類型,可以由Unicode 的字符
,數(shù)字或標(biāo)點(diǎn)來(lái)組成,-
字符串在使用時(shí)必須使用
' '
或" "
引起來(lái) -
每個(gè)字符都有對(duì)應(yīng)的
Unicode碼
查看字符的Unicode碼
var s1 = ‘張’;
方法:charCodeAt(index)
用來(lái)查看指定位置的字符對(duì)應(yīng)的Unicode編碼字符串中的字符都對(duì)應(yīng)有一個(gè)下標(biāo),參考數(shù)組的存儲(chǔ)方式,下標(biāo)從0開始
var s = 'hello';
s.charCodeAt(2);
-
boolean 布爾類型
用來(lái)表示真或假
布爾類型表示真或假,是可以參與數(shù)學(xué)運(yùn)算的,true = 1 / false = 0 -
undefined 類型
變量聲明未賦值時(shí),為undefined
如果訪問(wèn)對(duì)象不存在的屬性時(shí),也為undefined -
null 類型
空類型
-
-
判斷數(shù)據(jù)類型
typeof
使用:var n = 'asda' ; console . log ( typeof n ) ; console . log ( typeof ( n ) ) ;
-
引用數(shù)據(jù)類型(復(fù)雜數(shù)據(jù)類型)
數(shù)組 函數(shù) 對(duì)象
6.數(shù)據(jù)類型轉(zhuǎn)換
-
隱式類型轉(zhuǎn)換(自動(dòng)轉(zhuǎn)換)
-
number + string
當(dāng)字符串與其他數(shù)據(jù)類型相加時(shí), + 表示字符串的拼接,不再是數(shù)學(xué)運(yùn)算
轉(zhuǎn)換規(guī)則:將非字符串類型的數(shù)據(jù)轉(zhuǎn)換成字符串之后進(jìn)行拼接,最終結(jié)果為字符串 -
boolean + string
將布爾類型轉(zhuǎn)換為字符串進(jìn)行拼接var n = true ; var r = n + '你好' ; //'true你好';
-
number + boolean
將布爾類型轉(zhuǎn)換為數(shù)字進(jìn)行運(yùn)算true = 1 ; false = 0 ; et : var n = true + 15 ; //16 var n1 = false + 20 ; //20
-
-
強(qiáng)制類型轉(zhuǎn)換
-
toString()
將任意非字符串類型的數(shù)據(jù)轉(zhuǎn)換為字符串類型,并返回轉(zhuǎn)換后的結(jié)果var n = 100 ; var r = n . toString ( ) ; console . log ( typeof n , typeof r ) ;
-
Number()
將 數(shù)字字符串或者是布爾值轉(zhuǎn)換成number 類型 ,如果字符串中包含非數(shù)字字符,轉(zhuǎn)換失敗,會(huì)返回NaN
(Not a Number)var r = Number ( '35.5' ) ; //35.5 var r2 = Number ( true ) ; //1 var r3 = Number ( '18a' ) ; //NaN
-
parseInt()
解析字符串中的數(shù)字, 只解析字符串開頭中的數(shù)字 ,如果字符串不是以數(shù)字開頭的,都返回NaN,并且只解析整數(shù)(如果parseInt方法中的參數(shù)不是字符串,會(huì)自動(dòng)先使用toString() 轉(zhuǎn)換成字符串,之后在進(jìn)行判斷)var r = parseInt ( '18.2a' ) ; //18 var r2 = parseInt ( 'a18' ) ; //NaN var r3 = parseInt ( 35.5 ) ; //35 // 如果parseInt方法中的參數(shù)不是字符串,會(huì)自動(dòng)先使用toString() 轉(zhuǎn)換成字符串,之后在進(jìn)行判斷
-
parseFloat()
作用等同于parseInt(),解析結(jié)果包含小數(shù)部分
-
更多文章、技術(shù)交流、商務(wù)合作、聯(lián)系博主
微信掃碼或搜索:z360901061

微信掃一掃加我為好友
QQ號(hào)聯(lián)系: 360901061
您的支持是博主寫作最大的動(dòng)力,如果您喜歡我的文章,感覺我的文章對(duì)您有幫助,請(qǐng)用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點(diǎn)擊下面給點(diǎn)支持吧,站長(zhǎng)非常感激您!手機(jī)微信長(zhǎng)按不能支付解決辦法:請(qǐng)將微信支付二維碼保存到相冊(cè),切換到微信,然后點(diǎn)擊微信右上角掃一掃功能,選擇支付二維碼完成支付。
【本文對(duì)您有幫助就好】元
