02.【JS基礎(chǔ)】數(shù)據(jù)類(lèi)型的轉(zhuǎn)換方法

JavaScript

由于JavaScript是弱類(lèi)型語(yǔ)言瘩欺,故其有強(qiáng)類(lèi)型語(yǔ)言沒(méi)有的隱式轉(zhuǎn)換必盖。除此之外,還可通過(guò)強(qiáng)制類(lèi)型轉(zhuǎn)換轉(zhuǎn)換函數(shù)處理轉(zhuǎn)換值得類(lèi)型俱饿。

1.隱式類(lèi)型轉(zhuǎn)換

所謂隱式類(lèi)型轉(zhuǎn)換歌粥,即不同類(lèi)型的數(shù)據(jù)在做運(yùn)算時(shí)可以進(jìn)行默認(rèn)的數(shù)據(jù)類(lèi)型轉(zhuǎn)換。

隱式轉(zhuǎn)換法則

  • 1.1 字符串 + 數(shù)字/布爾值/null/undefined : 非字符串轉(zhuǎn)換為字符串拍埠;
  • 1.2 undefined + 非字符串(null/數(shù)字/布爾值/undefined) : NaN失驶;
  • 1.3 null + 數(shù)字/布爾值 : null 轉(zhuǎn)換為0,true轉(zhuǎn)換為1枣购,false轉(zhuǎn)換為0嬉探;
  • 1.4 布爾值 + 布爾值 : 布爾值轉(zhuǎn)換為數(shù)字。

優(yōu)先級(jí)排序 :字符串 > undefined > null >= 數(shù)字

2.強(qiáng)制類(lèi)型轉(zhuǎn)換

一共有三種強(qiáng)制類(lèi)型的轉(zhuǎn)換:Boolean(value)棉圈;Number(value);String(value)涩堤。用這三個(gè)函數(shù)轉(zhuǎn)換值,將創(chuàng)建一個(gè)新值分瘾,存放原始值轉(zhuǎn)換后的值

2.1 Boolean()——將給定的值轉(zhuǎn)換成布爾型

  • 當(dāng)要轉(zhuǎn)換的值是 ==空字符串== / ==數(shù)字0== / ==undefined== / ==null== 四種情況之一時(shí)胎围,返回false;否則返回true德召。
var aaa;
var bbb = null;
var ccc = "null";
var ddd = new Object();

Boolean(0);     //false
Boolean("");        //false

Boolean(undefined); //false
Boolean(aaa);       //false

Boolean(null);      //false
Boolean(bbb);       //false
Boolean(ccc);       //true ccc是值為"null"的字符串

console.log(ddd)    //{}
Boolean(ddd);       //true

2.2 Number()——將給定值轉(zhuǎn)換為數(shù)字

  • 布爾值true被轉(zhuǎn)換為1
  • 布爾值false和null被轉(zhuǎn)換為0
  • undefined和無(wú)法被轉(zhuǎn)換為數(shù)字的字符串(如"4.3.2"/"abc")被轉(zhuǎn)換為NaN
var aaa;
var bbb = null;
var ccc = "null";
var ddd = new Object();

Number(true);   //1
Number(false);  //0

Number(aaa);  //NaN
Number(undefined);  //NaN

Number(bbb);   //0
Number(null);   //0

Number("2.1.0");    //NaN
Number("abc");      //NaN
Number("2.1abc");   //NaN

Number("2.1");      //2.1

2.3 String()——將給定值轉(zhuǎn)換為字符串

  • 此方法最簡(jiǎn)單白魂,它可將任何值轉(zhuǎn)換為字符串
var ddd = new Object();

String(false);      //"false"
String(null);       //"null"
String(undefined);  //"undefined"
String(ddd);        //"[object Object]"

3.轉(zhuǎn)換函數(shù)

3.1 toString()

  • 轉(zhuǎn)換為字符串,類(lèi)似于String(),但undefined和null的轉(zhuǎn)換報(bào)錯(cuò)
var ddd = new Object();

toString(false);      //"false"
toString(null);       //"null"
toString(undefined);  //"[object Undefined]"
toString(null);        //"[object Undefined]"
toString(ddd);        //"[object Undefined]"

3.2 parseInt()

parseInt("aaa");    //NaN
parseInt("123");    //123
parseInt("12aaa");    //12
parseInt("aaa12");    //NaN
parseInt("123aaa12");    //123

parseInt(null);       //NaN
parseInt(undefined);   //NaN


3.3 parseFloat()

parseFloat("1.23sdf");   //1.23
parseFloat("sdf1.23");   //NaN
parseFloat("2.33sdf1.23");   //2.33

parseFloat(null);   //NaN
parseFloat(undefined);   //NaN

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末上岗,一起剝皮案震驚了整個(gè)濱河市福荸,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌肴掷,老刑警劉巖敬锐,帶你破解...
    沈念sama閱讀 221,695評(píng)論 6 515
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件辞嗡,死亡現(xiàn)場(chǎng)離奇詭異,居然都是意外死亡滞造,警方通過(guò)查閱死者的電腦和手機(jī)续室,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 94,569評(píng)論 3 399
  • 文/潘曉璐 我一進(jìn)店門(mén),熙熙樓的掌柜王于貴愁眉苦臉地迎上來(lái)谒养,“玉大人挺狰,你說(shuō)我怎么就攤上這事÷蚩撸” “怎么了丰泊?”我有些...
    開(kāi)封第一講書(shū)人閱讀 168,130評(píng)論 0 360
  • 文/不壞的土叔 我叫張陵,是天一觀的道長(zhǎng)始绍。 經(jīng)常有香客問(wèn)我瞳购,道長(zhǎng),這世上最難降的妖魔是什么亏推? 我笑而不...
    開(kāi)封第一講書(shū)人閱讀 59,648評(píng)論 1 297
  • 正文 為了忘掉前任学赛,我火速辦了婚禮,結(jié)果婚禮上吞杭,老公的妹妹穿的比我還像新娘盏浇。我一直安慰自己,他們只是感情好芽狗,可當(dāng)我...
    茶點(diǎn)故事閱讀 68,655評(píng)論 6 397
  • 文/花漫 我一把揭開(kāi)白布绢掰。 她就那樣靜靜地躺著,像睡著了一般童擎。 火紅的嫁衣襯著肌膚如雪滴劲。 梳的紋絲不亂的頭發(fā)上,一...
    開(kāi)封第一講書(shū)人閱讀 52,268評(píng)論 1 309
  • 那天顾复,我揣著相機(jī)與錄音班挖,去河邊找鬼。 笑死捕透,一個(gè)胖子當(dāng)著我的面吹牛聪姿,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播乙嘀,決...
    沈念sama閱讀 40,835評(píng)論 3 421
  • 文/蒼蘭香墨 我猛地睜開(kāi)眼末购,長(zhǎng)吁一口氣:“原來(lái)是場(chǎng)噩夢(mèng)啊……” “哼!你這毒婦竟也來(lái)了虎谢?” 一聲冷哼從身側(cè)響起盟榴,我...
    開(kāi)封第一講書(shū)人閱讀 39,740評(píng)論 0 276
  • 序言:老撾萬(wàn)榮一對(duì)情侶失蹤,失蹤者是張志新(化名)和其女友劉穎婴噩,沒(méi)想到半個(gè)月后擎场,有當(dāng)?shù)厝嗽跇?shù)林里發(fā)現(xiàn)了一具尸體羽德,經(jīng)...
    沈念sama閱讀 46,286評(píng)論 1 318
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 38,375評(píng)論 3 340
  • 正文 我和宋清朗相戀三年迅办,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了宅静。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點(diǎn)故事閱讀 40,505評(píng)論 1 352
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡站欺,死狀恐怖姨夹,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情矾策,我是刑警寧澤磷账,帶...
    沈念sama閱讀 36,185評(píng)論 5 350
  • 正文 年R本政府宣布,位于F島的核電站贾虽,受9級(jí)特大地震影響工猜,放射性物質(zhì)發(fā)生泄漏撩炊。R本人自食惡果不足惜熄驼,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,873評(píng)論 3 333
  • 文/蒙蒙 一隅津、第九天 我趴在偏房一處隱蔽的房頂上張望税朴。 院中可真熱鬧撑碴,春花似錦允懂、人聲如沸空骚。這莊子的主人今日做“春日...
    開(kāi)封第一講書(shū)人閱讀 32,357評(píng)論 0 24
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)。三九已至笑跛,卻和暖如春付魔,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背飞蹂。 一陣腳步聲響...
    開(kāi)封第一講書(shū)人閱讀 33,466評(píng)論 1 272
  • 我被黑心中介騙來(lái)泰國(guó)打工几苍, 沒(méi)想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留,地道東北人陈哑。 一個(gè)月前我還...
    沈念sama閱讀 48,921評(píng)論 3 376
  • 正文 我出身青樓妻坝,卻偏偏與公主長(zhǎng)得像,于是被迫代替她去往敵國(guó)和親惊窖。 傳聞我的和親對(duì)象是個(gè)殘疾皇子刽宪,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 45,515評(píng)論 2 359

推薦閱讀更多精彩內(nèi)容