1. 程式人生 > >js數據類型

js數據類型

否則 數據類型 轉換 symbol func script string類型 times 函數

Boolean null undefined Number String Symbol(ECMAScript 2015)

可以通過 typeof檢測類型。

var x = 1;
        console.log(typeof x);//number
         
        var a = undefined;
        console.log(typeof a);//undefined
          
        var b = null;
        console.log(typeof b);//object,(null是空對象引用/或者說指針)。
           
        var c = new Object();
        console.log(typeof c);//object
            
        var e = [1,2,3];
        console.log(typeof e);//object 
             
        var d = function(){
                  // ... 語句塊
        }
        console.log(typeof d);//function

        var e = {};
        console.log(typeof e); //object

        var f;
        console.log(typeof f);//undefined

        var g = "helloWorld";
        console.log(typeof g);//string

        var h = true;
        console.log(typeof h);// boolean

1.Number類型

Number類型包含整數和浮點數

NaN:非數字類型。特點:① 涉及到的 任何關於NaN的操作,都會返回NaN ② NaN不等於自身

var ab = "a1";
console.log(ab/10);// NaN
console.log(NaN == NaN);// false;

isNaN()函數,用於判斷是否是一個非數字類型。如果傳入的參數是一個非數字類型,那麽返回true;否則返回false;

        var num1 = 55;
        console.log(isNaN(num1));    //false
        var num2 ="測試"; 
        console.log(isNaN(num2));    //true
        var num3 ="666";
        console.log(isNaN(num3));  //false

Infinity 屬性用於存放表示正無窮大的數值。

var num4 = 66 / 0;
console.log(num4);//Infinity
console.log(typeof(num4));//number    

數值轉換:

Number()轉型函數,可以用於任何數據類型;

parseInt(),將值轉換為整型,用的比較多;

parseFloat();將值轉換為浮點型。

2.String類型

字符串轉換:轉型函數String(),適用於任何數據類型(null,undefined 轉換後為null和undefined);toString()方法(null,defined沒有toString()方法)。

var bc = "test";
var bd = null;
var be = undefined;
var ob = {};
console.log(bc.toString()); test
console.log(ob.toString());[object Object]
console.log(typeof ob.toString()); string
//console.log(bd.toString());//error 報錯
//console.log(be.toString());//error 報錯
console.log("------");
console.log(String(bc)); test
console.log(String(bd)); null
console.log(String(be)); undefined
console.log(String(ob));    [object Object] 

3.Null類型

null類型被看做空對象指針,前文說到null類型也是空的對象引用。只有一個值,即null值,所以,在你 用typeof 操作符去檢測null類型的值時,結果是object類型。

var test = null;
console.log(typeof test); //object

4.Undefined類型

只有一個值,即undefined值。使用var聲明了變量,但未給變量初始化值,那麽這個變量的值就是undefined。

var name = "test";
var age;
console.log(name);//test
console.log(age);//undefined
//console.log(height);//error,變量height沒有聲明
console.log(typeof name);//string
console.log(typeof age);//undefined
console.log(typeof height);//undefined,變量height沒有聲明

5.Boolean類型

true 或者false

var times = new Date("");
console.log(times); //Invalid Date
console.log(times == null);  //false
console.log(times == "Invalid Date"); //true
console.log(times === "Invalid Date");// false
console.log(typeof times);//object
console.log(times.toString() === "Invalid Date"); //true

var newObj1;/
console.log(newObj1);//undefined
console.log(typeof newObj1);//undefined
console.log(newObj1 == null);//true
console.log(newObj1 == undefined);//true
console.log(newObj1 === null);//false
console.log(newObj1 === undefined);//true

 

var newObj2 = null ;
console.log(newObj2);//null
console.log(typeof newObj2);//object
console.log(newObj2 == null);//true
console.log(newObj2 == undefined);//true
console.log(newObj2 === null);//true
console.log(newObj2 === undefined);//false

//0/0 5/0

var tnum = 5 / 0; 
console.log(tnum); //Infinity
console.log(typeof tnum);//number
console.log(tnum == true);//false
console.log(isNaN(tnum));//false

js數據類型