Javascript類型轉換詳解

類型轉換

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", "alison", "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";
let hd3 = "99";
console.log(hd == false);
console.log(hd2 == true);
console.log(hd3 == true);

在這裡插入圖片描述

(2)運算

在運算中string和number會被隱式轉換為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));

總結

本篇文章就到這裡瞭,希望能夠給你帶來幫助,也希望您能夠多多關註WalkonNet的更多內容!

推薦閱讀: