js特點:
? ? 解釋型語言
? ? 類似有C和JAVA的語法結(jié)構(gòu)
? ? 動態(tài)語言
? ? 基于原型的面向?qū)ο?/p>
JS要寫到Script標(biāo)簽中
alert()? 警告框
document.write() 在頁面中輸出一個內(nèi)容
console.log 向控制臺輸出一個內(nèi)容
js編寫位置
創(chuàng)建一個js文件把js內(nèi)容寫到j(luò)s外部文件中,可以在不同的頁面中同時引用,也可以利用到瀏覽器的緩存機(jī)制
text/javascript"src="">?
讀取格式是: 從上到下一次讀取
把代碼寫到標(biāo)簽onclick屬性中
創(chuàng)建一個按鈕可以把onclick包住,按住按鈕才會支撐
<button onclick="alert( ?? );">點我一下</buttom>
他們的屬性結(jié)構(gòu)與行為耦合,不建議使用,不方便維護(hù)
可以把代碼寫到href屬性中,這樣點擊超鏈接時會執(zhí)行js代碼
<a href="javascript:alert( ? );">ddd</a>
基本語法:
? ? 多行注釋/* ? */
? ? 單行//
字面量和變量:
????字面量(常量),都是一些不可改變的值比如 :1 2 3 4 5 "hello"字面量都是可以直接使用,但是我們一般都不會直接使用字面量
變量 變量可以用來保存字面量,而且變量的值是可以任意改變的變量更加方便我們使用,所以在開發(fā)中都是通過變量去保存一個字面量,而很少直接使用字面量可以通過變量對字面量進(jìn)行描述
聲明變量: var ;
賦值? a = 123;
聲明和賦值同時進(jìn)行
var b = 789;
var c = 0;
var age = 80;
console.log(age);
標(biāo)識符:
????變量名、函數(shù)名、屬性名都屬于標(biāo)識符
1.標(biāo)識符中可以含有字母、數(shù)字、_、$
2.標(biāo)識符不能以數(shù)字開頭
3.標(biāo)識符不能是ES中的關(guān)鍵字或保留字
4.標(biāo)識符一般都采用駝峰命名法
????- 首字母小寫,每個單詞的開頭字母大寫,其余字母小寫????????helloWorld xxxYyyZzz
JS底層保存標(biāo)識符采用Unicode編碼,所有utf8中含有的內(nèi)容都可以作為標(biāo)識符
數(shù)據(jù)類型:
????在JS中一共有六種數(shù)據(jù)類型
String 字符串? Number 數(shù)值
Boolean 布爾值 ? ? Null 空值 ? ?? Undefined 未定義 ?? Object 對象
Object屬于引用數(shù)據(jù)類型 ,其他5種屬于基本數(shù)據(jù)類型
String字符串
? ? ? ? ? ? 需要用引號引起來,單雙引號都可以,但是不能混用,引號不能嵌套,雙引號不能放雙引號,單引號不能放單引號
可以用 \ 作為轉(zhuǎn)義字符
\" 表示 "
\' 表示 '
\n 表示換行
\t 表示制表符yz/
-\\表示\
變量 = 常量(null)返回 object
Nuber: 在Js中所有數(shù)值都是Number類型,包括整數(shù)和浮點數(shù)(小數(shù))?
JS中可以表示的數(shù)字的最大值 Number.MAX_VALUE ? ?Number.MIN_VALUE
如果使用Number表示數(shù)字超過了最大值,則會返回一個Infinity 表示正無窮? -Infinity 負(fù)無窮
使用typeof檢查Infinity也會返回number
NaN 是一個特殊的數(shù)字,表示Not A Number使用typeof檢查一個NaN也會返回number
可以使用一個運算符 typeof 來檢查一個變量的類型語法:typeof 變量檢查字符串時,會返回string檢查數(shù)值時,會返回number
如果使用JS進(jìn)行浮點運算,可能會得到一個不精確的結(jié)果,不要用JS進(jìn)行精確度高的運算, 整數(shù)的運算基本可以保證精確
Boolean 布爾值布爾值只有兩個,主要用來做邏輯判斷true- 表示真false- 表示假使用typeof檢查一個布爾值時,會返回boolean
Null(空值)類型的值只有一個,就是nullnull這個值專門用來表示一個為空的對象使用typeof檢查一個null值時,會返回object
Undefined(未定義)類型的值只有一個,就undefind當(dāng)聲明一個變量,但是并不給變量賦值時,它的值就是undefined使用typeof檢查一個undefined時也會返回undefined
? ? ? ? ?? 強(qiáng)制類型轉(zhuǎn)換
????????類型轉(zhuǎn)換- 指將一個數(shù)據(jù)類型強(qiáng)制轉(zhuǎn)換為其他的數(shù)據(jù)類型
????????- 類型轉(zhuǎn)換主要指,將其他的數(shù)據(jù)類型,轉(zhuǎn)換為String Number Boolean
將其他的數(shù)據(jù)類型轉(zhuǎn)換為String方式一:- 調(diào)用被轉(zhuǎn)換數(shù)據(jù)類型的toString()方法- 該方法不會影響到原變量,它會將轉(zhuǎn)換的結(jié)果返回- 但是注意:null和undefined這兩個值沒有toString()方法,如果調(diào)用他們的方法,會報錯
方式二:- 調(diào)用String()函數(shù),并將被轉(zhuǎn)換的數(shù)據(jù)作為參數(shù)傳遞給函數(shù)- 使用String()函數(shù)做強(qiáng)制類型轉(zhuǎn)換時,對于Number和Boolean實際上就是調(diào)用的toString()方法但是對于null和undefined,就不會調(diào)用toString()方法它會將 null 直接轉(zhuǎn)換為 "null"將 undefined 直接轉(zhuǎn)換為 "undefined"