js之變數
1.變數 ,何為變數?變數,變化的量。
1)弱型別,js中的變數是弱型別的,變數的型別只有在初始化的時候才能被確定,並且變數的型別可以隨時改變。
var a ;/*變數的宣告*/
a =3;/*變數的初始化,由值來確定器型別*/ ---->a = true; a的值被覆蓋,a變為boolean型別
而在java中 int a =3; string str="hello"; 若是a = true; 報錯,不允許,a的型別已確定,a為int型別
2)宣告和初始化
var a; var b; var c,d; a=3; b=4 ; a=true ; c=null;
對於變數d,var d ; 對其進行宣告,但是,沒有初始化,他的值為undefined
若是d沒有宣告 d無法使用 報錯,d is not defined
3)js的變數提升?
console.log(f) ;
var f; // 宣告在後,使用在前,允許,變數f 被提升使用。
4)變數型別
1.基本資料型別
number string boolean null undefined
number : 數字
NaN (not a Number) /* var b =1/'a' 它的值為NaN 可以通過isNaN()判斷一個量是不是NaN
若是返回值為true,否則,返回false*/
Infinity 無窮大 isFinite() 判斷一個值是否為無窮大,若是返回boolean -->true。
string : 字串 型別
var a = ‘str’; 則a是一個字串。==============引號 同一型別的不可以巢狀.
boolean 布林型別 值為true/false 只能為true/false
null a =null typeof(a) 返回值為 Object null ---->空物件指標// 宣告一個變數初始化為null,表明它用來儲存物件
undefined 未定義 //無初始化 或者初始化為undefined 變數的型別為undefined
* 可以使用typeof 方法檢測一個變數的型別
2.引用資料型別
所有非基本資料型別 Object物件 陣列 函式 等
注意:
undefined和null的區別
undefined 派生自 null型別 若一個變數未宣告,或者未初始化,它就是undefined ,而null 則用來儲存一個物件,可以將一個變數初始化為null ,那麼這個變數可以用來儲存一個物件,它是一個空物件引用。