1. 程式人生 > 程式設計 >Javascript型別轉換詳解

Javascript型別轉換詳解

目錄
  • 型別轉換
    • 1.String->Number
    • 2.Number->String
    • 3.混合String->Number
    • 4.String->Array
    • 5.Array->String
    • 6.Array->Number
    • 7.toString()
    • 8.Boolean隱式轉換
      • (1)比較
      • (2)運算
      • (3)其他型別轉換為Boolean
    • 9.Boolean顯式轉換
      • (1)!!
      • (2)建構函式Boolean()
  • 總結

    型別轉換

    1.String->Number

    const string = "99";
    // 隱式轉換
    console.log(string * 1 + 77);
    // 顯式轉換
    console.log(Number(string) + 77);
    

    在這裡插入圖片描述

    2.Number->String

    const number = 66;
    console.log(typeof number);
    // 隱式轉換
    console.log(typeof (number + ""));
    // 顯式轉換
    console.log(typeof String(number));
    

    在這裡插入圖片描述

    3.混合String->Number

    把位於開頭的數值字串轉為數值型

    const string = "66.66alison";
    console.log(parseInt(string));
    console.log(parseFloat(string));
    

    在這裡插入圖片描述

    4.String->Array

    const name = "alison";
    console.log(name.split(""));
    

    在這裡插入圖片描述

    5.Array->String

    const array = ["yooo","alison","ruby","andy"];
    console.log(array.join(""));
    console.log(array.join("&"));
    

    在這裡插入圖片描述

    6.Array->Number

    空陣列為0,x單元素陣列為x,多元素陣列為NaN

    console.log(Number([]));
    console.log(Number([3]));
    console.log(Number([1,2,3]));
    

    在這裡插入圖片描述

    7.toString()

    主要用於將Array(由逗號隔開)、Boolean、Date、Number等物件轉換成String。

    const array = ["yooo","ruby","andy"];
    console.log(array.toString());
    const number = 99;
    console.log(typeof number.toString());
    

    在這裡插入圖片描述

    8.Boolean隱式轉換

    比較和運算是兩件事

    (1)比較

    在將boolean與number、string比較時,會隱式地將boolean中的true轉為1、false轉為0

    let number = 99;
    console.log(number == true);
    

    在這裡插入圖片描述

    let hd = '0';
    let hd2 = "1";
    lhttp://www.cppcns.comet hd3 = "99";
    console.log(hd == false);
    console.log(hd2 == true);
    console.log(hd3 == true);
    

    在這裡插入圖片描述

    (2)運算

    在運算中stWDgmqLqXring和number會被http://www.cppcns.com隱式轉換為boolean

    let number = 99;
    if (number) console.log("number");
    

    在這裡插入圖片描述

    (3)其他型別轉換為Boolean

    console.log(Boolean([]));
    console.log(Boolean({}));
    

    在這裡插入圖片描述

    數值型別0其他
    字串型別空串其他
    引用型別陣列和物件

    9.Boolean顯式轉換

    (1)!!

    !先將number轉換為boolean型別,然後再取反

    !!相當於把數值轉為布林

    (2)建構函式Boolean()

    // 數值
    let number = 0;
    number = !!number;
    console.log(Boolean(number));
    // 字串
    let string = "Alison";
    console.log(!!string);
    console.log(Boolean(string));
    // 陣列
    let array = [];
    console.log(!!array);
    console.log(Boolean(array));
    // 物件
    let object = {};
    console.log(!!object);
    console.log(Boolean(object));
    // 日期
    let date = new Date();
    console.log(!!date);
    console.log(Boolean(date));
    

    總結

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