標籤:valueof octal style 數字 函數 邏輯 角度 oct 區分大小寫
JS資料類型
ECMAScript中有5種簡單的資料類型:Undefined,Null,Boolean,Number,String.還有一種複雜的資料類型--Object(本質上是由一組無序的名值對組成的).
typeof操作符--用於檢測給定變數的資料類型
"undefined"—未定義
"boolean"—布爾值
"string"—字串
"number"—數值
"object"—對象或者null
"function"—函數
1.Undefined類型
Undefined類型只有一個值,即為特殊的undefined。
1.1 在使用var聲明變數但並未對其加以初始化時,這個變數就是undefined,例如:
var message;
alert(message == undefined); //傳回值為true
該例子為聲明了message變數,但是沒有對其初始化,因此返回的值為undefined。
1.2 未聲明變數。例如:
// var age ;
alert(age) // 產生錯誤
1.3 通關typeof返回資料類型時,未定義變數或變數沒初始化都將返回undefined 。例如:
var message;
// var age;
alert(typeof message);//undefined
alert(typeof age);//undefined
雖然上述兩種情況都為undefined,但其本質上來說是不一樣的。
2.Null類型
Null類型是第二個只有一個值的資料類型,這個特殊的值為null。從邏輯角度來看,null值表示一個Null 物件指標,而這也正是typeof操作符檢測到null值返回object的原因。例如:
var car = null;
alert(typeof car);//object
因此,若定義一個空的變數用於將來儲存物件,初始化時最好使用null。
3.Boolean類型
boolean類型在ECMAscript中用得比較多的一種類型,它只有兩個值:true or false 。
但是這兩個數值不是一回事,其他語言可能為1真0假,但是這裡不是這樣的。下面是為變數賦boolean值的例子:
var found = true ;
var lost = false;
注意:true 和 false 區分大小寫。
ECMAScript中可以用Boolean()函數轉化相應的值為boolean值。例如:
var message = "Hello World";
var messageBoolean = Boolean(message) //這裡為true,下面會講解具體類型的值轉化為對應boolean值的情況。
boolean()
| 資料類型 |
為true的情況 |
為flase的情況 |
| Boolean |
true |
false |
| String |
任何非Null 字元串 |
""(空的字串) |
| Number |
任何非零數字值(包括無窮大) |
0或者NaN |
| Object |
任何對象 |
null |
| Undefined |
不適用 |
undefined |
4.Number類型
4.1 整數: var intNun = 44;//整數
八進位: var octalNum1 = 070;//八進位的56
var octalNum2 = 079;//無效的八進位的數值-解析為79
十六進位: var hexNum1 = 0xA; //十六進位的10
var hexNum2 = 0x1f ; //十六進位31
4.2 浮點數值: var floatNum1 = 1.1;
var floatNum2 = 2.3534e7 ; //e7代表10的7次冪,即為23534000
4.3 NaN:特殊的數值,它本身也不等於他本身
alert(NaN==NaN);//false
4.4數值的轉化
Number();//可用於任何資料
parseInt();//轉化為整型
parseFloat();//轉化為浮點型
5.String類型
用於表示由零個或多個16位Unicode字串組成的字元序列,即為字串。通常用單引號(‘‘)或雙引號("")表示,例如:
var firstName = "Li";
var lastName = ‘hua‘;
字元字面量
常用字元字面量
| \n |
換行 |
| \t |
製表 |
| \r |
斷行符號 |
| \f |
進紙 |
| \\ |
斜杠 |
| \‘ |
單引號 |
| \" |
雙引號 |
| \b |
退格 |
6.Object類型
ECMAScript中的對象其實就是一組資料和功能的集合。
var o = new Object(); //建立一個新的對象
Object的每個執行個體都具有以下的屬性和方法:
1.constructor:儲存著用於建立當前對象的函數。
2.hasOwnProperty(propertyName):用於檢測給定的屬性在當前對象執行個體中是否存在。其中參數名必須以字串形式指定,例如:
O.hasOwnproperty("name");
3.isPrototypeOf(object):用於檢查傳入對象是否是當前對象的原型。
4.propertyIsRnumerable(propertyName):用於檢查給定的屬性是否能夠使用 for-in 語句,與hasOwnProperty用法一樣,參數名必須以字串形式指定。
5.toLocaleString():返回對象的字串表示。
6.valueOf():返回對象的字串、數值或布爾值表示。通常與toString()方法傳回值相同。
js資料類型簡單介紹