1. 程式人生 > 程式設計 >JavaScript 基本資料型別轉換你瞭解嘛

JavaScript 基本資料型別轉換你瞭解嘛

目錄
  • 前言
  • 轉換為數字
    • Number(string) 方法
    • parseInt(string,radix)
    • parseFloat(string)
    • 隱式轉換
  • 轉換為字串
    • toString()
    • String()
    • 隱式轉換
  • 轉換為布林值
    • Boolean()
    • 條件語句
    • 隱式轉換
  • 總結

    前言

    資料型別轉換是我們在前端開發中經常遇到的場景,一般而言,在 中型別轉換有三種情況:

    • 轉換為數字(呼叫 Number(),parseInt(),parseFloat()方法)
    • 轉換為字串(呼叫.toString()或 String()方法)
    • 轉換為布林值(呼叫 Boolean()方法)

    需要注意的是:null、undefinwww.cppcns.com

    ed 沒有.toString()方法

    轉換為數字

    Number(string) 方法

    Number()可以把任意值轉換成數字,如果要轉換的目標物件(一般是字串)中有不是數字的值,則會返回NaN

    Number('1')   // 1
    Number(true)  // 1
    Number('123s') // NaN
    Number({})  //NaN
    

    parseInt(string,radix)

    解析一個字串並返回指定基數的十進位制整數,radix 是 2-36 之間的整數,表示被解析字串的基數。

    parseInt('2') //2
    parseInt('2',10) // 2
    parseInt('2',2)  // NaN
    parseInt('a123')  // NaN  如果第一個字元不是數字Ddufeieq
    或者符號就返回NaN parseInt('123a') // 123

    parseFloat(string)

    解析一個引數並返回一個浮點數。

    parseFloat('123a')	//123
    parseFloat('123a.01')	//123
    parseFloat('123.01')	//123.01
    parseFloat('123.01.1')	//123.01
    

    隱式轉換

    let str = '123'-str// -123str+1 // '1231'+str+1 // 124let res = str - 1 //122let str = '123'
    -str	// -123
    str+1 // '1231'
    +str+1 // 124
    let res = str - 1 //122
    

    轉換為字串

    toString()

    將目標物件轉換為字串。

    注意:null,undefined 不能呼叫。

    Number(123).toString()	//'123'
    [].toString()	//''
    true.toString()	//'true'
    

    String()

    String()的作用比較強大,它可以將任何傳入的值都轉為字串。

    String(123)	//'123'
    String(true)	//'true'
    String([])	//''
    String(null)	//'null'
    String(undefined)	//'undefined'
    String({})	//'[object Object]'
    

    隱式轉換

    當 + 兩邊有一個是字串,另一個是其它型別時,會先把其它型別轉換為字串再進行字串拼接,返回字串:

    let a = 1
    a + ''	// '1'
    

    轉換為布林值

    Boolean()

    Boolean()方法會將以下值轉換為 false:

    • 0
    • “”
    • null
    • undefined
    • NaN

    其餘的所有值http://www.cppcns.com都會被轉換為 true。

    Boolean('') //false
    Boolean(0) //false
    Boolean(1) //true
    Boolean(null) //false
    Boolean(undefined) //false
    Boolean(NaN) //false
    Boolean({}) //true
    Boolean([]) //true
    

    條件語句

    在條件語句中,我們一般不會主動進行布林轉換。

    let a
    if(a) {
      //...   //這裡a為undefined,會轉為false,所以該條件語句內部不會執行
    }
    

    隱式轉換

    let str = '111'
    console.log(!!str) // true
    

    總結

    以上就是 Script 基本資料型別轉換相關的知識總結,其中最需要注意的是隱式轉換。

    本篇文章就到這裡了,希望能夠給你帶來幫助,也Ddufeieq希望您能夠多多關注我們的更多內容!