久久久久久久视色,久久电影免费精品,中文亚洲欧美乱码在线观看,在线免费播放AV片

<center id="vfaef"><input id="vfaef"><table id="vfaef"></table></input></center>

    <p id="vfaef"><kbd id="vfaef"></kbd></p>

    
    
    <pre id="vfaef"><u id="vfaef"></u></pre>

      <thead id="vfaef"><input id="vfaef"></input></thead>

    1. 站長資訊網(wǎng)
      最全最豐富的資訊網(wǎng)站

      Javascript的數(shù)據(jù)類型不包括什么

      Javascript的數(shù)據(jù)類型不包括Symbol,JavaScript有6種數(shù)據(jù)類型,分別是Undefined、Null、Boolean、Number、String和Object。

      Javascript的數(shù)據(jù)類型不包括什么

      本文操作環(huán)境:windows7系統(tǒng)、javascript1.8.5版、Dell G3電腦。

      Javascript的數(shù)據(jù)類型不包括什么?

      本文根據(jù)(JavaScript高級程序設(shè)計(jì)(第3版))總結(jié)

      JavaScript之六大數(shù)據(jù)類型(不包括Symbol)

      JavaScript 有6中數(shù)據(jù)類型——Undefined,Null,Boolean,Number,StringObject

      ES6中有7種, 多了一種數(shù)據(jù)類型Symbol, 本文不涉及.

      Undefined表示未定義,Null表示空,Boolean表示布爾值,Number表示數(shù)值,String表示字符串。
      通常我們可以用typeof操作符來檢測變量的數(shù)據(jù)類型。

      注意typeof是操作符!操作符!操作符!

      typeof操作符應(yīng)用一下規(guī)則:

      • "undefined"——這個(gè)值是未定義的。
      • "boolean"——這個(gè)值是布爾值
      • "string"——這個(gè)值是字符串
      • "number"——這個(gè)值是數(shù)值
      • "object"——這個(gè)值是對象或Null
      • "function"——這個(gè)值是函數(shù)

      例如字符串 str="我是String類型":

      console.log(typeof str) //"string" 注意typeof操作符的返回的結(jié)果是字符串

      對于typeof操作符, 還有一點(diǎn)詭異的地方,那就是:
      1. typeof對null返回"object",
      2. typeof對未聲明的變量返回"undefined"
      3. typeof對聲明而未初始化的變量也返回"undefined"

      var s = null console.log(typeof s) //"object" console.log(typeof a) //"undefined", 注意變量a未聲明 var b; console.log(typeof b) //"undefined", 注意變量b聲明但未初始化

      因?yàn)?code style="font-size: 14px;">typeof的詭異特性,且我們還需進(jìn)步知道變量的具體信息,我們常用instanceof來確定變量的數(shù)據(jù)類型。

      Undefined和Null

      UndefinedNull類型只有一個(gè)值,那分別是undefinednull。
      對于undefined來說,需要記住下面兩點(diǎn):

      1. 已聲明但未初始化的變量值為undefined(參考上面代碼)
      2. undefinednull相等
      console.log(undefined == null) //true

      對于null來說,需要記住兩點(diǎn):

      1. typeof null 返回"object",從邏輯上看,null為object的引用(示例見typeof
      2. undefinednull相等

      Boolean

      Boolean類型有兩個(gè)值——truefalse。
      任何數(shù)據(jù)可以調(diào)用布爾函數(shù)Boolean(), 會(huì)返回一個(gè)布爾值。

      類型 true false
      Boolean true false
      String 非零字符串 “”(空字符串)
      Number 非零數(shù)字(包括無窮大) 0和NaN
      Object 任何對象 null
      Undefined 不適用 undefined
      Null 不適用 null

      為了便于記憶, 只需記住false,""(空字符串),0,NaNnullundefined會(huì)使Boolean()函數(shù)變?yōu)?code>false,其他為true即可。

      代碼范例:

      console.log(Boolean(true)) //trueconsole.log(Boolean(""))   //falseconsole.log(Boolean(1))  //trueconsole.log(Boolean(null)) //false

      Number

      Number類型使用IEEE754格式表示整數(shù)和浮點(diǎn)數(shù)。對于整數(shù),JavaScript若遇到八進(jìn)制和十六進(jìn)制數(shù)會(huì)自動(dòng)轉(zhuǎn)換為十進(jìn)制數(shù), 若數(shù)的范圍超過八進(jìn)制和十六進(jìn)制的便是范圍則解析為是十進(jìn)制數(shù)。

      console.log(070) //56console.log(0xA) //10

      八進(jìn)制在嚴(yán)格模式下出錯(cuò)。

      對于浮點(diǎn)數(shù),Javascript會(huì)將小數(shù)點(diǎn)后全為0的小數(shù)和小數(shù)點(diǎn)后沒有數(shù)字的小數(shù)自動(dòng)轉(zhuǎn)換為整數(shù)。

      console.log(1.00) //1console.log(10.) //10

      浮點(diǎn)數(shù)最高精度為17位小數(shù), 但是在算術(shù)運(yùn)算時(shí)需要注意下面的式子:

      console.log(0.1+0.2) //0.30000000000000004

      這也是IEEE754格式表示的通病。

      數(shù)值范圍

      Number有兩個(gè)屬性表示JavaScript的數(shù)值范圍——Number.MAX_VALUENumber.MIN_VALUENumber.MAX_VALUE表示在JavaScript中最大的值,若超出其范圍則會(huì)轉(zhuǎn)為infinity 。
      Number.MIN_VALUE表示在JavaScript中最小的正值,若超出其范圍則會(huì)轉(zhuǎn)為0。
      Number.MAX_VALUE 在大多數(shù)瀏覽其中是1.7976931348623157e+308.
      我們可以通過isFinite()方法來確定變量是否在Number.MAX_VALUENumber.MIN_VALUE之間,若在,則返回true, 反之則返回false。

      var num = Number.MAX_VALUE+Number.MAX_VALUE;  //超出了Number.MAX_VALUEconsole.log(isFinite(num)); //false

      Number中有個(gè)特殊值–NaN, 這個(gè)數(shù)表示非數(shù)值(Not a number). 這個(gè)數(shù)有兩個(gè)特點(diǎn):

      1. 任何設(shè)計(jì)NaN的操作都返回NaN.
      2. NaN不等于任何值(包括它本身).

      我們通??梢杂?code>isNaN()函數(shù)確定某個(gè)變量是否是NaN.

      console.log(isNaN(NaN))  // trueconsole.log(isNaN("1"))  //false

      數(shù)值轉(zhuǎn)換 Number(), parseInt()和parseFloat()

      有三個(gè)函數(shù)可以講將數(shù)值轉(zhuǎn)換為數(shù)值類型: Number(), parseInt(), parseFloat().
      Number()函數(shù)的轉(zhuǎn)換規(guī)則如下:

      • 對于Boolean類型數(shù)值, true轉(zhuǎn)換為1, false轉(zhuǎn)換為0
      • null轉(zhuǎn)換為0
      • undefined轉(zhuǎn)換為NaN
      • String類型的值按以下規(guī)則轉(zhuǎn)換
        • 若字符串中只包含數(shù)字(包括前面帶正負(fù)號), 則將其轉(zhuǎn)換為十進(jìn)制數(shù). 且忽略前導(dǎo)0.
        • 若字符串包含有效的浮點(diǎn)格式數(shù), 則轉(zhuǎn)換為浮點(diǎn)數(shù). 忽略前導(dǎo)0.
        • 若字符串包含有效的十六進(jìn)制格式(如"0xf"), 則將其轉(zhuǎn)換為相同大小的十進(jìn)制數(shù).
        • 若為空串, 則轉(zhuǎn)換為0
        • 若字符串包含上述格式之外的其他子, 則轉(zhuǎn)換為NaN
      • 待轉(zhuǎn)換類型是對象時(shí), 調(diào)用對象的valueOf()方法返回某一值, 再按前面的方法轉(zhuǎn)換(第一次轉(zhuǎn)換)
        • 當(dāng)?shù)谝淮无D(zhuǎn)換結(jié)果為NaN時(shí), 調(diào)用對象的toString()方法返回字符串值, 再按前面的方法轉(zhuǎn)換

      parseInt()函數(shù)有兩個(gè)參數(shù), 第一個(gè)參數(shù)為待轉(zhuǎn)換的字符串(若不是字符串則使用ToString()函數(shù)轉(zhuǎn)換為字符串), 第二個(gè)參數(shù)2到36之間的一個(gè)數(shù), 作為基數(shù)使用. 基數(shù)可以省略, 默認(rèn)基數(shù)為10.

      parseInt() 在解析第一個(gè)參數(shù)(字符串)時(shí)會(huì)忽略字符串前面的空格, 知道找到第一個(gè)非空格字符. 如果第一個(gè)字符不是數(shù)字字符或者負(fù)號, parseInt()會(huì)返回NaN; 也就是說, 用parseInt() 轉(zhuǎn)換空字符串會(huì)返回NaN(Number對空字符串返回0). 如果第一個(gè)字符是數(shù)字字符, parseInt() 會(huì)繼續(xù)解析第二個(gè)字符, 直到解析完所有后續(xù)字符或者遇到了一個(gè)非數(shù)字字符.
      來源于(JavaScript高級程序設(shè)計(jì)(第3版))

      console.log(parseInt("   1234blue")) //1234console.log(parseInt("")) //NaNconsole.log(parseInt("AF", 16)) //175

      parseFloat() 相比于前兩個(gè), 他只能解析十進(jìn)制數(shù). 當(dāng)解析的字符串可以解析成整數(shù)時(shí)也會(huì)被解析位整數(shù).

      console.log(parseFloat("1234basd")) // 1234console.log(parseFloat("22.5") // 22.5

      贊(0)
      分享到: 更多 (0)
      網(wǎng)站地圖   滬ICP備18035694號-2    滬公網(wǎng)安備31011702889846號