JS資料型別

2021-10-13 09:51:26 字數 4197 閱讀 5214

js資料型別

- js中一共分成六種資料型別

- string 字串

- number 數值

- boolean 布林值

- null 空值

- undefined 未定義

- object 物件

- 其中基本資料型別有    

- string 字串

- js中的字串需要使用引號引起來雙引號或單引號都行

- 在字串中使用\作為轉義字元

\'  ==> '

\"  ==> "

\n  ==> 換行

\t  ==> 製表符

\\  ==> \    

- 使用typeof運算子檢查字串時,會返回"string"    

- number 數值

- js中所有的整數和浮點數都是number型別

- 特殊的數字

infinity 正無窮

-infinity 負無窮

nan 非法數字(not a number)

- 其他進製的數字的表示:

0b 開頭表示二進位制,但是不是所有的瀏覽器都支援

0 開頭表示八進位制

0x 開頭表示十六進製制

- 使用typeof檢查乙個number型別的資料時,會返回"number"

(包括nan 和 infinity)

- boolean 布林值

- 布林值主要用來進行邏輯判斷,布林值只有兩個

- true 邏輯的真

- false 邏輯的假

- 使用typeof檢查乙個布林值時,會返回"boolean"    

- null 空值

- 空值專門用來表示為空的物件,null型別的值只有乙個

- null

- 使用typeof檢查乙個null型別的值時會返回"object"

- undefined 未定義

- 如果宣告乙個變數但是沒有為變數賦值此時變數的值就是undefined

- 該型別的值只有乙個 undefined

- 使用typeof檢查乙個undefined型別的值時,會返回"undefined"

- 引用資料型別    

- object 物件

- 型別轉換

- 型別轉換就是指將其他的資料型別,轉換為string number 或 boolean

- 轉換為string

- 方式一(強制型別轉換):

- 呼叫被轉換資料的tostring()方法

- 例子:

var a = 123;

a = a.tostring();

- 注意:這個方法不適用於null和undefined

由於這兩個型別的資料中沒有方法,所以呼叫tostring()時會報錯

- 方式二(強制型別轉換):

- 呼叫string()函式

- 例子:

var a = 123;

a = string(a);

- 原理:對於number boolean string都會呼叫他們的tostring()方法來將其轉換為字串,

對於null值,直接轉換為字串"null"。對於undefined直接轉換為字串"undefined"

- 方式三(隱式的型別轉換): *****

- 為任意的資料型別 +""

- 例子:

var a = true;

a = a + "";

- 原理:和string()函式一樣    

- 轉換為number

- 方式一(強制型別轉換):

- 呼叫number()函式

- 例子:

var s = "123";

s = number(s);

- 轉換的情況:

1.字串 --> 數字

- 如果字串是乙個合法的數字,則直接轉換為對應的數字

- 如果字串是乙個非法的數字,則轉換為nan

- 如果是乙個空串或純空格的字串,則轉換為0

2.布林值 --> 數字

- true轉換為1

- false轉換為0

3.空值 --> 數字

- null轉換為0

4.未定義 --> 數字

- undefined 轉換為nan

- 方式二(強制型別轉換):

- 呼叫parseint()或parsefloat()

- 這兩個函式專門用來將乙個字串轉換為數字的

- parseint()

- 可以將乙個字串中的有效的整數字提取出來,並轉換為number

- 例子:

var a = "123.456px";

a = parseint(a); //123

- 如果需要可以在parseint()中指定乙個第二個引數,來指定進製    

- parsefloat()

- 可以將乙個字串中的有效的小數字提取出來,並轉換為number

- 例子:

var a = "123.456px";

a = parsefloat(a);

- 方式三(隱式的型別轉換):

- 使用一元的+來進行隱式的型別轉換

- 例子:

var a = "123";

a = +a;

- 原理:和number()函式一樣    

- 轉換為布林值

- 方式一(強制型別轉換):

- 使用boolean()函式

- 例子:

var s = "false";

s = boolean(s); //true

- 轉換的情況

字串 --> 布林

- 除了空串其餘全是true

數值 --> 布林

- 除了0和nan其餘的全是true

null、undefined ---> 布林

- 都是false

物件 ---> 布林

- 都是true

- 方式二(隱式型別轉換):    

- 為任意的資料型別做兩次非運算,即可將其轉換為布林值

- 例子:    

var a = "hello";

a = !!a; //true

- 運算子

- 運算子也稱為操作符

- 通過運算子可以對乙個或多個值進行運算或操作

- typeof運算子

- 用來檢查乙個變數的資料型別

- 語法:typeof 變數

- 它會返回乙個用於描述型別的字串作為結果

- 算數運算子

+    對兩個值進行加法運算並返回結果

-      對兩個值進行減法運算並返回結果

*    對兩個值進行乘法運算並返回結果

/    對兩個值進行除法運算並返回結果

%    對兩個值進行取餘運算並返回結果

- 除了加法以外,對非number型別的值進行運算時,都會先轉換為number然後在做運算。

- 而做加法運算時,如果是兩個字串進行相加,則會做拼串操作,將兩個字元連線為乙個字串。

- 任何值和字串做加法,都會先轉換為字串,然後再拼串

- 一元運算子

- 一元運算子只需要乙個運算元

- 一元的+

- 就是正號,不會對值產生任何影響,但是可以將乙個非數字轉換為數字

- 例子:

var a = true;

a = +a;

- 一元的-

- 就是負號,可以對乙個數字進行符號位取反

- 例子:

var a = 10;

a = -a;

- 自增

- 自增可以使變數在原值的基礎上自增1

- 自增使用 ++

- 自增可以使用 前++(++a)後++(a++)

- 無論是++a 還是 a++都會立即使原變數自增1

不同的是++a和a++的值是不同的,

++a的值是變數的新值(自增後的值)

a++的值是變數的原值(自增前的值)

- 自減    

- 自減可以使變數在原值的基礎上自減1

- 自減使用 --

- 自減可以使用 前--(--a)後--(a--)

- 無論是--a 還是 a--都會立即使原變數自減1

不同的是--a和a--的值是不同的,

--a的值是變數的新值(自減後的值)

a--的值是變數的原值(自減前的值)

js資料型別

一.原始資料型別 1.typeof 運算子。var a alert typeof a 輸出結果為 undefined 2.undefined 未定義 型別 當變數未定義時,該變數值被預設為undefined 如 var a alert typeof a 輸出結果為 undefined 注意值unde...

js資料型別

js 基本資料型別 undefined null boolean number string js 操作符 typeof檢測給定變數的資料型別。返回值表示的型別 undefined 值未定義。boolean 值為布林型別。string 值為字串。number 值為數字。object 值為物件或nul...

js資料型別

var num 1,boo true,aa null,bb,str mary arr 1,2,4,8 obj arrnew new array 1,2,3 strnew new string 1,2,3 用 typeof 檢測變數的型別 console.log number typeof num n...