国产xxxx99真实实拍_久久不雅视频_高清韩国a级特黄毛片_嗯老师别我我受不了了小说

資訊專(zhuān)欄INFORMATION COLUMN

javascript 的基本類(lèi)型 和 與操作符結(jié)合時(shí)的類(lèi)型轉(zhuǎn)換

pcChao / 3436人閱讀

摘要:的基本類(lèi)型的基本類(lèi)型和類(lèi)型轉(zhuǎn)換系統(tǒng)相較于其他語(yǔ)言例如來(lái)說(shuō)可以說(shuō)是非常混亂的這個(gè)是許多新手必定會(huì)遇到的坑首先有五種簡(jiǎn)單的基本類(lèi)型和一種復(fù)雜的數(shù)據(jù)類(lèi)型類(lèi)型檢測(cè)有兩種方式和用來(lái)檢測(cè)對(duì)象的原型鏈但有時(shí)候也會(huì)不好用比如不同里的檢測(cè)對(duì)于已經(jīng)實(shí)現(xiàn)了方法的

javascript 的基本類(lèi)型

javascript的基本類(lèi)型和類(lèi)型轉(zhuǎn)換系統(tǒng)相較于其他語(yǔ)言例如 Java 來(lái)說(shuō)可以說(shuō)是非?;靵y的.這個(gè)是許多新手必定會(huì)遇到的坑.首先javascript 有五種簡(jiǎn)單的基本類(lèi)型(undefined,null,Number,Boolean,String).和一種復(fù)雜的數(shù)據(jù)類(lèi)型object.

類(lèi)型檢測(cè)有兩種方式 typeof 和 instanceof .

instanceof用來(lái)檢測(cè)對(duì)象的原型鏈. 但有時(shí)候 instanceof 也會(huì)不好用比如不同window.frames[0]里的 Array檢測(cè),對(duì)于已經(jīng)實(shí)現(xiàn)了 toString 方法的類(lèi)型,我們可以用Object.prototype.toString.call(obj) 來(lái)檢測(cè),得到結(jié)果類(lèi)似[object Array].

typeof : 因?yàn)镹aN屬于 number 的一種所以 typeof NaN === "number" ; 在javascript 里 Object,String等都是一種構(gòu)造函數(shù),所以 typeof Object === "function",typeof String === "function".
typeof 所有的檢測(cè)結(jié)果如下:

Type Result
Undefined "undefined"
Null "object" (see below)
Boolean "boolean"
Number "number"
String "string"
Symbol (new in ECMAScript 2015) "symbol"
Host object (provided by the JS environment) Implementation-dependent
Function object (implements [[Call]] in ECMA-262 terms) "function"
Any other object "object"
與操作符結(jié)合后的 javascript 類(lèi)型轉(zhuǎn)換
    弱類(lèi)型的 javascript 的許多操作符會(huì)自動(dòng)類(lèi)型轉(zhuǎn)換,很多時(shí)候轉(zhuǎn)換后的
    結(jié)果會(huì)讓人吃驚.下面我們來(lái)總結(jié)一下:
1. 嘗試將兩個(gè)變量轉(zhuǎn)換為數(shù)值(調(diào)用 Number())的操作符 :一元操作符 ++,--;乘性操作符 *,
    Number的轉(zhuǎn)換規(guī)則是 
    1.1 如果是string:
        1.1.1 判斷是否能轉(zhuǎn)換為數(shù)值含有字母和其他非.符號(hào)的直接返回 
NaN ; 1.0 , .1 均可以轉(zhuǎn)換為數(shù)值 ,.1.1含兩個(gè)以上的不能轉(zhuǎn)換為數(shù)值.
        1.1.2 能轉(zhuǎn)換為數(shù)值的返回對(duì)應(yīng)數(shù)值.
    1.2 如果是boolean:
        1.2.1 true 轉(zhuǎn)換為0;
        1.2.2 false 轉(zhuǎn)換為1;
    1.3 如果是 undefined: 轉(zhuǎn)換為 NaN
    1.4 如果是 null 轉(zhuǎn)換為 0
    1.5 如果是 Object var result = obj.valueof(); return Number(result) 如果得到 NaN,再調(diào)用 toString
2. 嘗試將兩個(gè)變量轉(zhuǎn)換為布爾值: 布爾操作符 !;條件操作符 ? :
    Boolean的轉(zhuǎn)換規(guī)則是:
    2.1 如果是string: 空字符串""返回 false ,其他返回 true.(注意 new String("") 屬于對(duì)象)
    2.2 如果是number: 0返回 false,其他 true
    2.3 undefined 和 null 返回 false
    2.4 object : 返回true
3. 先判斷是要轉(zhuǎn)換為哪種基本類(lèi)型,再做轉(zhuǎn)換. 加性:+;條件>,<;非嚴(yán)格相等 == 3.1 加性 +,-
    3.1.1如果兩個(gè)都是數(shù)值正常計(jì)算 infinity,-infinity 和 +0,-0 略過(guò)..
    3.1.2如果兩個(gè)都是字符串拼接.
    3.1.3如果只有一個(gè)是字符串,將另一個(gè)轉(zhuǎn)換為字符串.
    3.1.4如果有一個(gè)是對(duì)象,嘗試轉(zhuǎn)換為字符串
    3.1.5如果兩個(gè)都不是字符串,且其中一個(gè)是數(shù)值,將另一個(gè)轉(zhuǎn)換為數(shù)值.
    3.1.6其他情況都是 NaN
3.2 條件 >,<
    3.2.1兩個(gè)都是數(shù)值,數(shù)值比較
    3.2.2兩個(gè)都是字符串,字符編碼比較 (注意 A
3.3 不嚴(yán)格相等 == 不同類(lèi)型是
    3.3.1布爾值先轉(zhuǎn)換為數(shù)值
    3.3.2一個(gè)是字符串,一個(gè)是數(shù)值.字符串轉(zhuǎn)換為數(shù)值
    3.3.3對(duì)象調(diào)用 valueof(),再比較
    3.3.4 == 有 NaN,就為 fasle ;!= 有 NaN ,就為 true
    3.3.5 undefined == null ,undefined 和 null 不會(huì)轉(zhuǎn)換為其他類(lèi)型進(jìn)行比較.
    
4.if 語(yǔ)句 使用 Boolean()

部分內(nèi)容來(lái)源于 :

Javascript 高級(jí)程序設(shè)計(jì), MDN和網(wǎng)絡(luò)

文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請(qǐng)注明本文地址:http://m.specialneedsforspecialkids.com/yun/85957.html

相關(guān)文章

  • Java 11 教程

    摘要:原文鏈接已于成功發(fā)布,不過(guò)目前絕大多數(shù)人在生產(chǎn)環(huán)境仍舊使用的是。這篇以案例為主的教程涵蓋了從到的絕大多數(shù)重要的語(yǔ)法與特性。當(dāng)編譯器不能正確識(shí)別出變量的數(shù)值類(lèi)型時(shí),將不被允許使用。同步請(qǐng)求將會(huì)阻塞當(dāng)前的線程,直到返回響應(yīng)消息。 showImg(https://segmentfault.com/img/remote/1460000016575203); 原文鏈接:https://wangw...

    douzifly 評(píng)論0 收藏0
  • [JavaScript 隨筆] 理解嚴(yán)格相等、非嚴(yán)格相等隱式類(lèi)型轉(zhuǎn)換

    摘要:顯然,相等判斷是基于數(shù)字比較的,而條件判斷是基于布爾值。嚴(yán)格相等嚴(yán)格相等的邏輯相對(duì)簡(jiǎn)單粗暴,如果類(lèi)型不同,就不考慮隱式轉(zhuǎn)換了,直接為假。 JavaScript 中大概有這幾種 類(lèi)型: undefined null string boolean number object function 之所以在 類(lèi)型 上加了雙引號(hào),是因?yàn)閲?yán)格來(lái)說(shuō),null 的類(lèi)型是 object。但本文討論的主...

    rickchen 評(píng)論0 收藏0
  • 【連載】前端個(gè)人文章整理-從基礎(chǔ)到入門(mén)

    摘要:個(gè)人前端文章整理從最開(kāi)始萌生寫(xiě)文章的想法,到著手開(kāi)始寫(xiě),再到現(xiàn)在已經(jīng)一年的時(shí)間了,由于工作比較忙,更新緩慢,后面還是會(huì)繼更新,現(xiàn)將已經(jīng)寫(xiě)好的文章整理一個(gè)目錄,方便更多的小伙伴去學(xué)習(xí)。 showImg(https://segmentfault.com/img/remote/1460000017490740?w=1920&h=1080); 個(gè)人前端文章整理 從最開(kāi)始萌生寫(xiě)文章的想法,到著手...

    madthumb 評(píng)論0 收藏0

發(fā)表評(píng)論

0條評(píng)論

最新活動(dòng)
閱讀需要支付1元查看
<