JS資料型別

2022-08-28 18:24:11 字數 2913 閱讀 4867

undefined型別就只有乙個值,undefined。在使用變數但是沒有為其賦值的時候,這個變數的就是undefined。

2. null型別

null型別的值也是只有乙個,就null,表示乙個空的物件。從邏輯角度來看,null值表

示乙個空物件指標,這也正是用typeof操作符檢測null值時會返回object的原因。

實際上,undefined值是從null值派生而來的,因此當我們對這兩個資料型別進行相等測試時,會返回true。

3. 布林型別

boolean型別,值為true和false.

可以使用boolean()函式將其他型別轉換為布林值。

console.log(boolean(」hello"));//true

下面的9個值是對應布林型別裡面的假值

「」:雙引號的空字串

『』:單引號的空字串

``:空字串模板

0:數字0

-0: js中一0和0為不同的值

nanfalse

null

undefined

4. 數字型別

number型別的值可以分為整數和實數兩大類。

1.nan也屬於number型別。

英文全稱為not a number,即非數值。這個數值用於表示本來要返回數值的運算元未返回數值的情況(這樣就不會丟擲錯誤了)。

nan特點:1、任何涉及nan的操作都會返回nan。(除字串)

let a=nan+10;

console.log(a); //nan

2、nan和任何值都不相等,包括它自己本身。

除此之外,ecmascript還定義了乙個isnan()函式,來幫助我們判斷乙個引數是否不是數值。isnan()函式在接收到乙個值之後,會嘗試將這個值轉換為數值。

判斷是否為數值:!isnan()進行取反

5. 數值轉換

將非數值的資料轉為數值, 分別是number(),parseint()以及parsefloat()三個方法。

1)number()

如果是boolean值,true和false將分別被轉換為1和0

如果是數字,那麼就是簡單的傳入和返回

如果是null值,那麼返回0

如果是undefined,那麼返回nan。

console.log(number(null));//0

console.log(number(undefined));//nan

如果是字串,那麼又有如下的規則:

如果字串只包含數字,則將其轉為十進位制,即  "123」變成123

如果字串中包含有效的十六進製制格式,如」1.1",則將其轉換為對應的浮點數值

如果字串中包含有效的十六進製制格式,例如」oxf",則會將其轉換為相同大小的十進位制整數。

如果字串是空的,則將其轉換為0

如果字串包含上述格式之外的字元,則將其轉換為nan.

2)parselnt():也是將乙個非數值轉為數值

說明:相比number()函式,parselnt會更多的看是否有數字,有就會將其轉換為數值。

例子為number函式轉換」123hello"會轉換為nan,而parselnt則會將其轉換為123,

碰到空字串時,number函式會將其轉換為0,而parselnt則會將其轉換為nan

最後是在碰到小數時,會有乙個取整的過程。例如」3.14」會被轉換為」3"。

碰到undefined和null都轉換為nan.

3)parsefioat:將非數值轉為浮點數

該函式會將帶有小數點的字串轉換為小數。如果沒有小數點的數會被轉換為整數。同樣的parsefioat()也是盡可能轉換更多的數值,例如」123hello」會被轉換為123.

tofixed()方法按照指定的小數字返回數值四捨五入後的字串表示(常用於處理貨幣值)

let num = 10.456;

console.log(num.to fixed(2));

console.log(num.to fixed());//10

6字串

6-1.字串介紹

字串的內容本身包含單引號或者雙引號的話,需要和字串界限符區分開,也可使用轉義字元

let c=」hello \"world\",welcome";

字串這種資料型別非常的霸道,它和其他資料型別相加都會被轉換為字串型別

如果要讓乙個非字串的變數轉換為字串的話,只需要和乙個空字串相加就可以。

轉換字串也可以tostring()函式來轉換。該函式會將除了null和undefined以外的資料型別轉換為字串。a .tostring()

:string(),這個函式就可以5種資料型別都轉換為字串。string(a)

6-2字串模板

反引號(`)標識  es6新增的

和雙引號區別:可換行,雙引號不可換行;

在反引號中可插入$ let name="xiejie";

console.log(『hello,$)

7. 型別轉換

7-1 .隱性轉換

預期為數字的時候:

算術運算的時候,我們的結果和運算的數都是數字,資料會轉換為數字進行計算-*/%)

相當於用number()

預期為字串的時候:轉為字串使用+號時候,會自動轉換為字串

預期為布林的時候:轉換為布林值,undefined,  null,」」,0,  nan轉為false,其餘轉為true

7-2強制轉換

轉換字串:a=」」+資料

轉換布林:!資料型別

轉換數值:資料型別*或/1

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...