摘要:對(duì)象類型轉(zhuǎn)化先調(diào)用對(duì)象自身的方法,如果該方法返回原始類型的值數(shù)值字符串和布爾值,則直接對(duì)該值使用方法,不再進(jìn)行后續(xù)步驟。
類型轉(zhuǎn)化
javascript
類型轉(zhuǎn)化最新的 ECMAscript 標(biāo)準(zhǔn)定義了7種數(shù)據(jù)類型數(shù)據(jù)類型
原始類型:Boolean、Null、Undefined、Number、String、Symbol「ES6 新增」 對(duì)象:Object
顯式類型轉(zhuǎn)換 「手動(dòng)執(zhí)行」
Number 函數(shù)
1. 原始類型轉(zhuǎn)換 - 數(shù)值:轉(zhuǎn)換后還是原來(lái)的值。 - 字符串:如果可以被解析為數(shù)值,則轉(zhuǎn)換為相應(yīng)的數(shù)值,負(fù)責(zé)得到 NaN。空字符串轉(zhuǎn)為 0。 - 布爾值:ture 轉(zhuǎn)為 1,false 轉(zhuǎn)為 0。 - undefined:轉(zhuǎn)為NaN。 - null:轉(zhuǎn)成 0。 2. 對(duì)象類型轉(zhuǎn)化 - 先調(diào)用對(duì)象自身的 valueOf 方法,如果該方法返回原始類型的值「數(shù)值、字符串和布爾值」,則直接對(duì)該值使用 Number 方法,不再進(jìn)行后續(xù)步驟。 - 如果 valueOf 方法返回符合類型的值,再調(diào)用對(duì)象自身的 toString 方法,如果 toString 方法返回原始類型的值,則對(duì)該值使用 Number 方法,不再進(jìn)行后續(xù)步驟。如果 toString 方法返回復(fù)合類型的值,則報(bào)錯(cuò)。
String 函數(shù)
1. 原始類型轉(zhuǎn)換 - 數(shù)值:轉(zhuǎn)為相應(yīng)的字符串。 - 字符串:轉(zhuǎn)換后還是原來(lái)的值。 - 布爾值:ture 轉(zhuǎn)為「ture」,false 轉(zhuǎn)為「false」。 - undefined:轉(zhuǎn)為「undefined」。 - null:轉(zhuǎn)為「null」。 2. 對(duì)象類型轉(zhuǎn)化
Boolean 函數(shù)
1. 原始類型轉(zhuǎn)換 - undefined: - null: - -0: - +0: - NaN: - ""空字符串 - 以上全部轉(zhuǎn)化為 false,其他都轉(zhuǎn)換為 ture。 2. 對(duì)象類型轉(zhuǎn)化 - 先調(diào)用對(duì)象自身的 toString 方法,如果該方法返回原始類型的值,則直接對(duì)該值使用 String 方法,不再進(jìn)行后續(xù)步驟。 - 如果 toString 方法返回符合類型的值,再調(diào)用對(duì)象自身的 valueOf 方法,如果 valueOf 方法返回原始類型的值,則對(duì)該值使用 String 方法,不再進(jìn)行后續(xù)步驟。如果 valueOf 方法返回復(fù)合類型的值,則報(bào)錯(cuò)。
隱式類型轉(zhuǎn)換 「程序內(nèi)部執(zhí)行」
四則運(yùn)算
判斷語(yǔ)句
Native 調(diào)用「alert、console.log」
typeof
表達(dá)式 | 返回值 |
---|---|
typeof undefined | "undefined" |
typeof null | "object" |
typeof true | "boolean" |
typeof 123 | "number" |
typeof "abc" | "string" |
typeof function() {} | "function" |
typeof {} | "object" |
typeof [] | "object" |
typeof unknownVariable | "undefined" |
實(shí)例:
類型轉(zhuǎn)換
文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請(qǐng)注明本文地址:http://specialneedsforspecialkids.com/yun/93169.html
摘要:讓我們快速的復(fù)習(xí)一下在中一共有兩種類型的值原始值和對(duì)象值原始值有布爾值數(shù)字還有字符串其他的所有值都是對(duì)象類型的值包括數(shù)組和函數(shù)類型轉(zhuǎn)化先按運(yùn)算符來(lái)分一下類減號(hào),乘號(hào),肯定是進(jìn)行數(shù)學(xué)運(yùn)算,所以操作數(shù)需轉(zhuǎn)化為類型。 前言 很多小伙伴們覺(jué)得javaScript很簡(jiǎn)單,下面的這行 javaScript代碼可能會(huì)讓你懷疑人生。 (!(~+[])+{})[--[~+][+[]]*[~+[]] +...
摘要:核心內(nèi)置類,會(huì)嘗試先于可以理解為對(duì)象優(yōu)先轉(zhuǎn)換成數(shù)字例外的是,利用的是轉(zhuǎn)換。非核心的對(duì)象,通過(guò)自己的實(shí)現(xiàn)中定義的方法轉(zhuǎn)換成原始值。 本文首發(fā)于個(gè)人博客 showImg(https://segmentfault.com/img/remote/1460000015954811?w=639&h=724); 看到這個(gè)是不是有一種想打人的感覺(jué),垃圾 JavaScript,這特么都什么鬼,相信很多...
數(shù)據(jù)類型轉(zhuǎn)化表 首先上數(shù)據(jù)類型轉(zhuǎn)化表,便于遇到問(wèn)題直接查看 值 字符串 數(shù)字 布爾值 對(duì)象 undefined null undefined null NaN false false throws TypeError throws TypeError true false true false 1 0 new Boolean(true) new Boolean(f...
摘要:例如兩個(gè)引用類型判斷兩者之間的引用路徑。布爾值與數(shù)字比較時(shí),布爾值轉(zhuǎn)化成數(shù)字值,二者再進(jìn)行比較。根據(jù)運(yùn)算符的優(yōu)先級(jí),先執(zhí)行,直接轉(zhuǎn)化為布爾值空字符串,,,都是,其余都是再取反,故轉(zhuǎn)化為。最后,故結(jié)果為。 兩個(gè)操作數(shù)之間的 == 與 === 1、 兩個(gè)不同的基本數(shù)據(jù)類型: 如果兩個(gè)基本數(shù)據(jù)類型(Number、String、Boolean、Null、Undefined)不同,會(huì)將它...
摘要:同樣,也可以將數(shù)字轉(zhuǎn)換為其他進(jìn)制數(shù),如轉(zhuǎn)換結(jié)果轉(zhuǎn)換結(jié)果轉(zhuǎn)換結(jié)果對(duì)象類型中對(duì)象到字符串的轉(zhuǎn)換經(jīng)過(guò)了如下步驟如果對(duì)象具有方法,則調(diào)用這個(gè)方法。如果它返回一個(gè)基本類型值,將這個(gè)值轉(zhuǎn)換為字符串,并返回這個(gè)字符串。 ToString 其他類型值轉(zhuǎn)化為字符串類型的值通常使用String()或者toString()方法 基本類型 基本類型的字符串轉(zhuǎn)化規(guī)則為:null轉(zhuǎn)化為null,undefined...
閱讀 3062·2021-11-16 11:45
閱讀 3588·2021-09-29 09:34
閱讀 706·2021-08-16 10:50
閱讀 1576·2019-08-30 15:52
閱讀 1967·2019-08-30 15:45
閱讀 863·2019-08-29 15:23
閱讀 1929·2019-08-26 13:51
閱讀 3304·2019-08-26 12:23