1. 程式人生 > >【JS】基礎篇之帶你走進JavaScript的資料型別

【JS】基礎篇之帶你走進JavaScript的資料型別

前言

  什麼是JS呢?全稱是JavaScript,是能夠執行在JS直譯器中的指令碼語言。那知道了什麼是JS,那你知道什麼是ES嗎?如果你瞭解JS的前世今生,你就知道什麼是ES了,ES就是JS,相當於ES是大名,JS是小名。就想給同學起外號,10年之後,只記得他的外號,而忘記他的真名了。現在呢,我們就一起來了解一下JS的資料型別吧。

巨集觀把控

  先來一張圖簡單瞭解一下js的資料型別都有哪些內容:
在這裡插入圖片描述

如何獲取資料型別呢?

  這裡就涉及到了一個運算子:typeof,它的語法是string typeof(變數);舉個例子吧:

			alert(typeof "123");        //彈出string
			alert(typeof true);         //彈出boolean
			alert(typeof 123);          //彈出number

  這是強調一下:js是一種弱型別的語言,所有的變數都是用var來宣告的,而且不會檢查型別,如下程式碼都對:

			var num=10;
			alert(typeof num);

			num="123";
			alert(typeof num);

			num=true;
			alert(typeof num);

			num=new Date();
			alert(typeof num);      //object

資料型別之基本型別

1.都有哪些基本型別呢?

  如上圖所示,大致有3種,基本型別(也叫值型別):number,boolean,string;注意這三個都是小寫的,如果首字母大寫了,Number,String,Boolean就變成包裝型別了。

2.基本型別的轉換

  1)任何一個不為空的物件轉換成boolean值都為true;
  2)數字轉成字串

string(數字)
數字+""
數字.toString()

  3)字串轉數字

字串-0
number(字串)
parseInt() parseFloat()

  4)轉boolean

否定兩次,真假值不變,但是可以自動轉成bool,例如:

if(!!val) {

}

資料型別之引用型別

1.物件型別

  物件型別返回object,例如陣列與日期都是物件型別:

			alert(typeof {});             //object   物件型別
			alert(typeof new Array());    //object
			alert(typeof new Date());     //object

2.函式型別

  先定義一個函式,之後取這個函式的型別就是函式型別:

			var func=function() {};
			alert(typeof func);           //function
			
			alert(typeof typeof func);    //string

資料型別之空型別

1.null

  值為null時,取型別,也會返回object,例如:

			var number=null;       
			alert(typeof number);      //object

2.undefined

  undefined表示為“未定義”,如果宣告一個變數,但是未賦值,取型別就會顯示undefined。

			var num;
			alert(typeof num);         //undefined

總結

  任何一門語言都有自己的資料型別,他們之間有共同點,但是也有自己獨特的內容,快去發現他們的不同吧。