日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 前端技术 > javascript >内容正文

javascript

JS的类型转换

發布時間:2023/12/9 javascript 17 豆豆
生活随笔 收集整理的這篇文章主要介紹了 JS的类型转换 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

stringnumber函數不被用作構造函數的可以當成轉換函數

如?string(false),number(‘3’),boolean([])

Object(3)?=?new?number(3);

除了NULLundefined以外任何值都具有toString()方法

JS?在執行程序的時候會自動檢測表達式來進行變量轉換。

???顯示轉換變量:

???可以使用構造函數:

??String(‘op’);object();boolean([]),number(‘3’),

類型之間的轉換:

???

類型

字符串

數字

布爾值

對象

undefined

“undefined”

NaN

false

Thows?TypeError

null

“”

0

false

Thows?TypeError

“”

?

?

false

New?string(“”)

“1.2”

?

1.2

true

New?string(“1.2”)

“one”

?

NaN

true

New?string(“one”)

0

“0”

?

false

New?number(0)

-0

“0”

?

false

New?number(-0)

NaN

“NaN”

?

false

New?number(NaN)

Infinity

“Infinity”

?

true

New?number(Infinity)

-Infinity

“-Infinity”

?

true

New?number(-Infinity)

1

‘1’

?

True?

New?number(1)

{}任意對象

?

?

True

?

[]任意數組

?

0

True

?

[8]

“8”

8

true

?

[‘a’]

join

NaN

true

?

function

?

NaN

true

?

?

?

對象轉換為原始值:

所有的對象都轉換為布爾值為true,包括包裝對象也是這樣。

對象轉換為字符串和數值的是調用一個方法來實現的。麻煩的是JS對象有兩個不同的方法來轉換。

第一個方法:toString()方法,返回一個反映這個對象的字符串。

({x:1,y:2}).toString()?//?=>[object?object]

數組返回:將每個數組元素返回并在數組元素后加,合并成一個字符串。

函數類的toString返回這個函數定義語法;

日期類:返回一個可讀的日期字符串。

第二個方法:valueOf()

??這個方法未定義具體的作用;

如果存在原始值返回原始值,對象是復合值,因此一般返回對象本身,而不是返回一個原始值。

特殊情況:

對象轉換到字符串:

???如果對象具有toString方法,則調用此方法如果此方法返回的是一個原始值則把原始值轉換為字符串。

如果對象沒有toString方法,或是此方法不返回一個原始值的話調用valueOf方法,如果valueOf返回一個原始值則轉換為字符串。

如果,valuetoString沒法返回原始值,則拋出一個錯誤。

?

對象轉換到數字:

????如果對象具有valueOf方法,,或是此方法不返回一個原始值的話調用valueOf方法,如果valueOf返回一個原始值則轉換為數值。

???

如果對象不具有valueOf方法,則調用toString方法如果此方法返回的是一個原始值則把原始值轉換為數值。

如果,valuetoString沒法返回原始值,則拋出一個錯誤。

轉載于:https://www.cnblogs.com/phplhs/p/4156464.html

總結

以上是生活随笔為你收集整理的JS的类型转换的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。