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