js編寫位置/js基本語法/字面量和變量/標(biāo)識(shí)符/數(shù)據(jù)類型/Number/Boolean/Null和Undefined/強(qiáng)制類型轉(zhuǎn)換/轉(zhuǎn)換為Number/其他進(jìn)制的數(shù)字/轉(zhuǎn)換為Boolean/運(yùn)算符

js編寫位置

可以將js代碼編寫到外部js文件中,然后通過script標(biāo)簽引入

寫到外部文件中可以在不同的頁面中同時(shí)引用,也可以利用到瀏覽器的緩存機(jī)制

這是推薦使用的方式

script標(biāo)簽一旦用于引入外部文件了,就不能再編寫代碼了,即使編寫了瀏覽器也會(huì)忽略

如果需要?jiǎng)t可以再創(chuàng)建一個(gè)新的script標(biāo)簽用于編寫內(nèi)部代碼

..........................................................................................................................................................

可以將js代碼編寫到script標(biāo)簽中

<script type="text/javascript">

alert("我是script標(biāo)簽中的代碼!!");

</script>

..........................................................................................................................................................

可以將js代碼編寫到標(biāo)簽的onclick屬性中

當(dāng)我們點(diǎn)擊按鈕時(shí),js代碼才會(huì)執(zhí)行

雖然可以寫在標(biāo)簽的屬性中,但是他們屬于結(jié)構(gòu)與行為耦合,不方便維護(hù),不推薦使用

..........................................................................................................................................................

可以將js代碼寫在超鏈接的href屬性中,這樣當(dāng)點(diǎn)擊超鏈接時(shí),會(huì)執(zhí)行js代碼

js基本語法

JS注釋

多行注釋

注釋中的內(nèi)容不會(huì)被執(zhí)行,但是可以在源代碼中查看

要養(yǎng)成良好的編寫注釋的習(xí)慣,也可以通過注釋來對(duì)代碼進(jìn)行一些簡(jiǎn)單的調(diào)試

..........................................................................................................................................................

單行注釋

alert("hello");

document.write("hello");

console.log("hello");//該語句用來在控制臺(tái)輸出一個(gè)日志

..........................................................................................................................................................

1.JS中嚴(yán)格區(qū)分大小寫

2.JS中每一條語句以分號(hào)(;)結(jié)尾

- 如果不寫分號(hào),瀏覽器會(huì)自動(dòng)添加,但是會(huì)消耗一些系統(tǒng)資源,

- 而且有些時(shí)候,瀏覽器會(huì)加錯(cuò)分號(hào),所以在開發(fā)中分號(hào)必須寫

3.JS中會(huì)忽略多個(gè)空格和換行,所以我們可以利用空格和換行對(duì)代碼進(jìn)行格式化

..........................................................................................................................................................

字面量和變量

字面量(常量),都是一些不可改變的值

比如 :1 2 3 4 5 "hello"

字面量都是可以直接使用,但是我們一般都不會(huì)直接使用字面量

變量? ? 變量可以用來保存字面量,而且變量的值是可以任意改變的

變量更加方便我們使用,所以在開發(fā)中都是通過變量去保存一個(gè)字面量,而很少直接使用字面量

可以通過變量對(duì)字面量進(jìn)行描述

x = 123456789123456789

..........................................................................................................................................................

標(biāo)識(shí)符

標(biāo)識(shí)符

- 在JS中所有的可以由我們自主命名的都可以稱為是標(biāo)識(shí)符

- 例如:變量名、函數(shù)名、屬性名都屬于標(biāo)識(shí)符

- 命名一個(gè)標(biāo)識(shí)符時(shí)需要遵守如下的規(guī)則:

1.標(biāo)識(shí)符中可以含有字母、數(shù)字、_、$

2.標(biāo)識(shí)符不能以數(shù)字開頭

3.標(biāo)識(shí)符不能是ES中的關(guān)鍵字或保留字

4.標(biāo)識(shí)符一般都采用駝峰命名法

- 首字母小寫,每個(gè)單詞的開頭字母大寫,其余字母小寫

helloWorld xxxYyyZzz

- JS底層保存標(biāo)識(shí)符時(shí)實(shí)際上是采用的Unicode編碼,所以理論上講,所有的utf-8中含有的內(nèi)容都可以作

數(shù)據(jù)類型

數(shù)據(jù)類型指的就是字面量的類型

在JS中一共有六種數(shù)據(jù)類型

String 字符串

Number 數(shù)值

Boolean 布爾值

Null 空值

Undefined 未定義

Object 對(duì)象

其中String Number Boolean Null Undefined屬于基本數(shù)據(jù)類型

而Object屬于引用數(shù)據(jù)類型

...............................................................................................................................................................

String字符串

- 在JS中字符串需要使用引號(hào)引起來

- 使用雙引號(hào)或單引號(hào)都可以,但是不要混著用

- 引號(hào)不能嵌套,雙引號(hào)不能放雙引號(hào),單引號(hào)不能放單引號(hào)

..........................................................................................................................................

在字符串中我們可以使用\作為轉(zhuǎn)義字符,當(dāng)表示一些特殊符號(hào)時(shí)可以使用\進(jìn)行轉(zhuǎn)義

\" 表示 "

\' 表示 '

\n 表示換行

\t 制表符

\\ 表示\

...........................................................................................................................

Number

在JS中所有的數(shù)值都是Number類型,

包括整數(shù)和浮點(diǎn)數(shù)(小數(shù))

JS中可以表示的數(shù)字的最大值

Number.MAX_VALUE

1.7976931348623157e+308

Number.MIN_VALUE 大于0的最小值

5e-324

如果使用Number表示的數(shù)字超過了最大值,則會(huì)返回一個(gè)

Infinity 表示正無窮

-Infinity 表示負(fù)無窮

使用typeof檢查Infinity也會(huì)返回number

NaN 是一個(gè)特殊的數(shù)字,表示Not A Number

使用typeof檢查一個(gè)NaN也會(huì)返回number

..........................................................................................................................................................

可以使用一個(gè)運(yùn)算符 typeof 來檢查一個(gè)變量的類型

語法:typeof 變量

檢查字符串時(shí),會(huì)返回string

檢查數(shù)值時(shí),會(huì)返回number

..........................................................................................................................................................

如果使用JS進(jìn)行浮點(diǎn)運(yùn)算,可能得到一個(gè)不精確的結(jié)果

所以千萬不要使用JS進(jìn)行對(duì)精確度要求比較高的運(yùn)算

....................................................................................................................................................

Boolean

Boolean 布爾值

布爾值只有兩個(gè),主要用來做邏輯判斷

true

- 表示真

false

- 表示假

使用typeof檢查一個(gè)布爾值時(shí),會(huì)返回boolean

....................................................................................................................................................

Null和Undefined

Null(空值)類型的值只有一個(gè),就是null

null這個(gè)值專門用來表示一個(gè)為空的對(duì)象

使用typeof檢查一個(gè)null值時(shí),會(huì)返回object

Undefined(未定義)類型的值只有一個(gè),就undefind

當(dāng)聲明一個(gè)變量,但是并不給變量賦值時(shí),它的值就是undefined

使用typeof檢查一個(gè)undefined時(shí)也會(huì)返回undefined

................................................................................................................................

強(qiáng)制類型轉(zhuǎn)換

強(qiáng)制類型轉(zhuǎn)換

- 指將一個(gè)數(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()方法

- 該方法不會(huì)影響到原變量,它會(huì)將轉(zhuǎn)換的結(jié)果返回

- 但是注意:null和undefined這兩個(gè)值沒有toString()方法,如果調(diào)用他們的方法,會(huì)報(bào)錯(cuò)

方式二:

- 調(diào)用String()函數(shù),并將被轉(zhuǎn)換的數(shù)據(jù)作為參數(shù)傳遞給函數(shù)

- 使用String()函數(shù)做強(qiáng)制類型轉(zhuǎn)換時(shí),

對(duì)于Number和Boolean實(shí)際上就是調(diào)用的toString()方法

但是對(duì)于null和undefined,就不會(huì)調(diào)用toString()方法

它會(huì)將 null 直接轉(zhuǎn)換為 "null"

將 undefined 直接轉(zhuǎn)換為 "undefined"

................................................................................................................................

轉(zhuǎn)換為Number

將其他的數(shù)據(jù)類型轉(zhuǎn)換為Number

轉(zhuǎn)換方式一:

使用Number()函數(shù)

- 字符串 --> 數(shù)字

1.如果是純數(shù)字的字符串,則直接將其轉(zhuǎn)換為數(shù)字

2.如果字符串中有非數(shù)字的內(nèi)容,則轉(zhuǎn)換為NaN

3.如果字符串是一個(gè)空串或者是一個(gè)全是空格的字符串,則轉(zhuǎn)換為0

- 布爾 --> 數(shù)字

true 轉(zhuǎn)成 1

false 轉(zhuǎn)成 0

- null --> 數(shù)字 0

- undefined --> 數(shù)字 NaN

轉(zhuǎn)換方式二:

- 這種方式專門用來對(duì)付字符串

- parseInt() 把一個(gè)字符串轉(zhuǎn)換為一個(gè)整數(shù)

- parseFloat() 把一個(gè)字符串轉(zhuǎn)換為一個(gè)浮點(diǎn)數(shù)

....................................................................................................................................................

其他進(jìn)制的數(shù)字

在js中,如果需要表示16進(jìn)制的數(shù)字,則需要以0x開頭

如果需要表示8進(jìn)制的數(shù)字,則需要以0開頭

如果要要表示2進(jìn)制的數(shù)字,則需要以0b開頭,但是不是所有的瀏覽器都支持

....................................................................................................................................................

轉(zhuǎn)換為Boolean

將其他的數(shù)據(jù)類型轉(zhuǎn)換為Boolean

使用Boolean()函數(shù)

- 數(shù)字 ---> 布爾

- 除了0和NaN,其余的都是true

- 字符串 ---> 布爾

- 除了空串,其余的都是true

- null和undefined都會(huì)轉(zhuǎn)換為false

- 對(duì)象也會(huì)轉(zhuǎn)換為true

....................................................................................................................................................

運(yùn)算符

運(yùn)算符也叫操作符

通過運(yùn)算符可以對(duì)一個(gè)或多個(gè)值進(jìn)行運(yùn)算,并獲取運(yùn)算結(jié)果

比如:typeof就是運(yùn)算符,可以來獲得一個(gè)值的類型,它會(huì)將該值的類型以字符串的形式返回

"number" "string" "boolean" "undefined" "object"

算數(shù)運(yùn)算符

當(dāng)對(duì)非Number類型的值進(jìn)行運(yùn)算時(shí),會(huì)將這些值轉(zhuǎn)換為Number然后在運(yùn)算

任何值和NaN做運(yùn)算都得NaN

+

+可以對(duì)兩個(gè)值進(jìn)行加法運(yùn)算,并將結(jié)果返回

如果對(duì)兩個(gè)字符串進(jìn)行加法運(yùn)算,則會(huì)做拼串,會(huì)將兩個(gè)字符串拼接為一個(gè)字符串,并返回

任何的值和字符串做加法運(yùn)算,都會(huì)先轉(zhuǎn)換為字符串,然后再和字符串做拼串的操作

-

- 可以對(duì)兩個(gè)值進(jìn)行減法運(yùn)算,并將結(jié)果返回

*

* 可以對(duì)兩個(gè)值進(jìn)行乘法運(yùn)算

/

/ 可以對(duì)兩個(gè)值進(jìn)行除法運(yùn)算

%

% 取模運(yùn)算(取余數(shù))

....................................................................................................................................................

任何值和字符串相加都會(huì)轉(zhuǎn)換為字符串,并做拼串操作

我們可以利用這一特點(diǎn),來將一個(gè)任意的數(shù)據(jù)類型轉(zhuǎn)換為String

我們只需要為任意的數(shù)據(jù)類型 + 一個(gè) "" 即可將其轉(zhuǎn)換為String

這是一種隱式的類型轉(zhuǎn)換,由瀏覽器自動(dòng)完成,實(shí)際上它也是調(diào)用String()函數(shù)

....................................................................................................................................................

任何值做- * /運(yùn)算時(shí)都會(huì)自動(dòng)轉(zhuǎn)換為Number

我們可以利用這一特點(diǎn)做隱式的類型轉(zhuǎn)換

可以通過為一個(gè)值 -0 *1 /1來將其轉(zhuǎn)換為Number

原理和Number()函數(shù)一樣,使用起來更加簡(jiǎn)單

....................................................................................................................................................

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容