首頁  >  文章  >  web前端  >  js資料型別有哪些?這些js資料型別之間是如何轉換的?

js資料型別有哪些?這些js資料型別之間是如何轉換的?

不言
不言原創
2018-07-20 16:13:011629瀏覽

JS引用資料型別有哪些? JS中有六種資料類型:Undefined、Null、Boolean、Number、String以及Object。其中前面五種是簡單資料類型,也是基本上常用的js資料類型,最後一種是複雜資料類型,那麼這些資料類型之間是如何轉換的呢?讓我們來看看下面的介紹。

一、宣告變數

一條語句,多個變數

可以在一條語句中宣告很多變數。語句以var 開頭,並使用逗號分隔變數即可:

var name="Gates", age=56, job="CEO";

宣告也可橫跨多行:

var name="Jim",
age=32,
job="CEO";

二、顯式資料型別轉換

1.轉數字
有三個函數可以把非數值轉換成數值:Number()、parseInt()、parseFloat()。 Number可以用於任何資料類型,而另兩個函數則專門用於把字串轉換為數值。

1.Number轉換:

轉換規則如下:

1)如果是Boolean值,true和false將分別轉換為1和0。
2)如果是數字值,只是簡單的傳入和回傳。
3)如果是null值,回傳0。
4)如果是undefined,則回傳NaN。
5)如果是字串,遵循下列規則:
· 如果字串只包含數字,則將其轉換為十進制數值;
· 如果字串包含有效的浮點格式,如"1.1",則將其轉換為對應的浮點數值。
· 如果字串中包含有效的十六進位格式,如"0xf",則將其轉換為對應大小的十進位整數;
· 如果字串為空,則將其轉換為0;
· 其他,轉換為NaN。
6)如果是對象,則呼叫對象的valueOf()方法,然後依照前面的規則轉換回傳的值。如果轉換的結果是NaN,則呼叫物件的toString()方法,然後再次依照前面的規則轉換回傳的字串值。

var num1 = Number("hello world"); //NaN
var num2 = Number("");                 //0
var num3 = Number("0011");        //11
var num4 = Number(true);            //1

2.parseInt()

忽略字串前面的空格,直到找到第一個非空字符,會忽略後面的非數字字元;如果第一個字元不是數字符號或負號,傳回NaN;會將小數取整(向下取整)

var num1 = parseInt("1234blue");  //1234
var num2 = parseInt(" ");                //NaN
var num3 = parseInt(22.5):            //22

3.parseFloat()
與parseInt一樣,唯一差異在於parseFloat可以保留小數。

2.轉字串
可以將其它的資料型別轉成字串。

1.轉型函數String()String()函數遵循下列轉換規則:

1)如果值有toString()方法,則呼叫該方法並傳回對應結果;
2)如果值是null,則傳回"null";
3)如果值是undefined,則傳回"undefined";

2.toString()的方法來轉換

#
var num1 = 10;
var str1 = num1.toString();    //"10"

注意:
呼叫數值的toString()方法時,可以傳遞一個參數:輸出數值的參數,透過這個值可以輸出以二進位、八進位、十六進位,乃至其他任意有效進位格式表示的字串值。

var num = 10;
num.toString(); //"10"
num.toString(2); //"1010"
num.toString(8); //"12"
num.toString(10); //"10"
num.toString(16); //"a"

三、轉boolean型別
Boolean類型的字面上值true和false是區分大小寫的。任何非空字串、任何非零數字值、任何物件都可以轉換為true,而空字串、0和NaN、null和undefined則為false。

var mes = "hell0";
var mesBool = Boolean(mes);  //true

3.隱式轉換

1.轉number

var num = "123";
num = +num;

加減乘除以及最餘都可以讓字串隱式轉換成number.

2.轉string

var str = 123;
str = str + "";

3.轉boolean

var bool = 123;
bool = !!bool;

相關推薦:

js的資料型別及JS基本數據類型具體有哪幾種

JS資料型別轉換總結

#

以上是js資料型別有哪些?這些js資料型別之間是如何轉換的?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn