JS中的數據類型

JS中的數據類型分爲基本數據類型和引用數據類型;函數

  基本數據類型包括number、string、boolean、null、undefined;spa

  引用數據類型包括對象數據類型object和函數數據類型functionprototype

  基本數據類型是按照值來操做的,引用數據類型是按照引用地址來操做的。code

  1. number(數字)
    • number中包含 正數、負數、0、小數、NaN(NaN:not a number)
    • Js中等號的三種狀況
      • =       賦值  
      • ==    比較,是判斷左右兩邊的值是否相等   
      • ===  絕對比較,是判斷左右兩邊的值是否絕對相等
    • NaN==NaN  --》false

  number中的方法對象

  方法一:isNaN(要檢測的值):is not a numberblog

     做用:檢測一個值是否是有效數字,若是不是一個有效數字,返回true,若是是有效數字,返回false; 原型鏈

    console.log(isNaN(123));  //false
    console.log(isNaN('haha'));  //true

  方法二:強制轉換:Number(要轉換的值)--》將其餘數據類型轉換爲number數據類型字符串

    若是要檢測的值是其餘數據類型,會默認執行Number()轉換爲數字,而後再判斷get

  方法三:非強制轉換:parseInt/parseFloat原型

   parseInt(要轉換的內容); 從左到右依次查找,只要遇到一個字符不是數字,就中止查找;若是是字符串,字符串中第一個字符不是數字,直接返回NaN

  parseInt('12px');  //12

   parseFloat 和parseInt同樣,只不過能夠多識別一個點

    parseFloat('12.34px');  //12.34
    parseFloat('12.34.5px');  //12.34
    parseFloat('12a3c');  //12
    parseFloat('1a2.3');  //1
    parseFloat('a12.4px');  //NaN
    parseFloat('12a12.5px');//12

 

   注意:強制轉換和非強制轉換的共同點:只要第一個字符不是有效數字 就直接返回NaN

      方法四:toFixed(n)   保留小數點後面n位

  var num = 3.141592654;
  console.log(num.toFixed(2));//->3.14

 

  2.boolean:只有兩個值 true false 

     規律:0 NaN ‘’ null undefined 這五個值是false,其他都是true 

       執行Boolean()、!、!! 這三種方法都是將其餘的數據類型轉換爲布爾類型 

      ! 一個歎號 取反(先將這個值轉換爲布爾類型 【執行  Boolean();】,而後再取反)

      !! 取反再取反 至關於直接轉換爲布爾類型 和執行Boolean()方法 同樣

    若是條件判斷中只有一個單獨的值,那它的意思是:首先把這個值轉換爲布爾類型,而後看是真仍是假,是的真的話條件成立,反之條件不成立

  3.null和undefined

  null表示"沒有對象",即該處不該該有值。典型用法是:

(1) 做爲函數的參數,表示該函數的參數不是對象。

(2) 做爲對象原型鏈的終點。

Object.getPrototypeOf(Object.prototype)// null

 

  undefined表示"缺乏值",就是此處應該有一個值,可是尚未定義。典型用法是:

(1)變量被聲明瞭,但沒有賦值時,就等於undefined。

(2) 調用函數時,應該提供的參數沒有提供,該參數等於undefined。

(3)對象沒有賦值的屬性,該屬性的值爲undefined。

(4)函數沒有返回值時,默認返回undefined。

var i;
i // undefined

function f(x){console.log(x)}
f() // undefined

var  o = new Object();
o.p // undefined

var x = f();
x // undefined
相關文章
相關標籤/搜索