js資料型別轉換

2021-10-21 12:34:26 字數 4065 閱讀 7090

為什麼要有資料型別轉換?

使用關鍵字來轉換

1-其他型別轉換成number型別
console.

log(

number

("123"))

;//123

console.

log(

number

("123.1.1abc"))

;//nan 只要有乙個字元不是數字,得到就是nan

console.

log(

parseint

("123.1.1abc"))

;//123 從左往右解析,遇到非數字結束

console.

log(

parsefloat

("123.1.1abc"))

; 與parseint唯一的區別就是可以識別第乙個小數點

//一般數字字串使用parseint和parsefloat,其他資料型別轉數字使用number()

console.

log(

number

(true))

;//1布林型別轉換number會得到數字0(false)和1(true)

console.

log(

number(""

));//0 空字串轉number會得到0

//js基礎面試題

console.

log(

number

(undefined));

//nan

console.

log(

number

(null))

;//0

2-其他型別轉換成string型別

2.第二種方式:string(變數名)

let a =

null

;//1.常用: string ( )

//特點:可以識別undefined與null

console.

log(

string

(null))

;//null

console.

log(

typeof

string

(a))

;//string

// //2. 變數名.tostring ()

//特點:無法識別undefined與null,程式會報錯

console.

log(a.

tostring()

);<

/script>

3-其他型別轉換成boolean型別
console.

log(

boolean(0

));//false

console.

log(

boolean(-

0));

//false

console.

log(

boolean

(null))

;//false

console.

log(

boolean

(false))

;//false

console.

log(

boolean

( undefined ));

//false

console.

log(

boolean(''

));//false

console.

log(

boolean

(nan))

;//false

運算子兩邊資料型別不一致,編譯器自動幫我們轉換一致在計算,這是js的語法特點

自增自減(++ --)

算術運算子(+ - * / %)

比較運算子(> < >= <= == != === !==)

3.轉成boolean型別:邏輯非(!)會將任何資料轉為boolean型別再運算

*4.+號有三種含義:數學正負號**成number)、算術運算子**成number)、字串連線符**成string)

隱式轉換 : 如果運算子兩邊資料型別不一致,編譯器偷偷的幫我們轉成一致再計算。(1

)其他資料型別轉number :

數學正號 :

+num

自增自減: ++

--

算術運算子: +-*

/%關係運算子 :

>

<

>=

<=(2

)其他資料型別轉string :+(

3)其他資料型別轉boolean :

! console.

log(

'100'-1

);// number('100') - 1 = 100 - 1 = 99

//1.其他資料型別轉number :

// 數學正號 : +num

// 自增自減: ++ --

// 算術運算子: + - * / %

console.

log(

+'10');

// number('10')

console.

log(

'張三'

-100);

// number('張三') - 100 = nan - 100 = nan

console.

log(10-

'1')

;// 10 - number('1') = 10 - 1 = 9

//2. 其他資料型別轉string : +

console.

log(

'1'+1)

;//'1' + string(1) = '1' + '1' = '11'

/* 容易混淆點 : 把算術運算子 + 轉換規則 與 連線符 + 轉換規則搞混淆

*/console.

log(

'1'+

true);

//1true 連線符 『1』 + string(true) = '1' + 'true' = '1true'

console.

log(1+

true);

//2 算術運算子 1 + number(true) = 1 + 1 = 2

console.

log(

1+ undefined)

;//nan 算術 1 + number(undefined) = 1 + nan = nan

console.

log(1+

null);

//1 算術 1 + number(null) = 1+ 0 = 1

console.

log(

'1'+

null);

//1null 連線 '1' + string(null) = '1' + 'null' = '1null'

//其他資料型別轉boolean : !

//取反 : true變false false變true

console.

log(!1

);//(1)!boolean(1) = !true = false

console.

log(!!

'');//(1)!!boolean('') (2)!!false (3)!true = false

//js面試題

console.

log(undefined +

null);

//nan

console.

log(undefined -

null);

//nan

console.

log(undefined - undefined)

;//nan

console.

log(

null

-null);

//0<

/script>

JS資料型別轉換

js var blue alert scolor.length outputs 4 js varfalse alert bfound.tostring outputs false js varvar outputs 10 js var outputs a js var var var var ret...

JS 資料型別轉換

js 資料型別轉換 方法主要有三種 轉換函式 強制型別轉換 利用js變數弱型別轉換。1.轉換函式 js提供了parseint 和parsefloat 兩個轉換函式。前者把值轉換成整數,後者把值轉換成浮點數。只有對string型別呼叫這些方法,這兩個函式才能正確執行 對其他型別返回的都是nan not...

JS 資料型別轉換

js 資料型別轉換 方法主要有三種 轉換函式 強制型別轉換 利用js變數弱型別轉換。1.轉換函式 js提供了parseint 和parsefloat 兩個轉換函式。前者把值轉換成整數,後者把值轉換成浮點數。只有對string型別呼叫這些方法,這兩個函式才能正確執行 對其他型別返回的都是nan not...