標籤:
一、定義1、資料類型決定了一個資料的特徵,限定了該資料類型必須按照一定的規則進行操作。2、特定的資料類型會有其想對應的行為模式。3、javascript中有6中資料類型
Number --數值型
boolean --布爾型
string --字串型
Null --空
undefined --未定義
Object --對象型
4、值和對象的區別,資料類型的執行個體被稱為“值”,Obj類型的執行個體被稱為“對象”,不過javascript支援值與對象的隱式變換。
二、基礎資料型別 (Elementary Data Type)和引用資料類型1、javascript變數可以分為基礎資料型別 (Elementary Data Type)變數和參考型別變數。2、基礎資料型別 (Elementary Data Type)變數直接儲存有數值等類型的資料值。3、參考型別變數則儲存有對象的引用
三、基礎資料型別 (Elementary Data Type)1、字串類型是javascript的基礎資料型別 (Elementary Data Type)2、字串值會被隱式地轉換為字串物件類型。3、數實值型別其內部構造為64位浮點小數。相當於其他語言中的duoble類型。4、null類型的值只有null一種情況,null屬於字面量。5、undefined類型是指未定義的值的類型。
四、字串型1、字串值可以通過字串字面量來表示。2、字串字面量需要用雙引號(" ")或者單引號(‘ ‘)
var s="abs";
document.write(s);
/*
輸出:
abs
*/
var s=‘abs‘;
document.write(s);
/*
輸出:
abs
*/
(1)、特殊字元可以通過逸出字元串來表示。可以通過轉義符之後使用特定字元,來表達一些特殊的含義
\n --換行
\t --水平製表
\b --退格
\r --換行
\f --換頁
\v --垂直定位字元
\\ --反斜線
\‘ --單引號
\" --雙引號
\xXX --以十六進位碼錶示一個字元
\uXXXX --以十六進位碼錶示一個Unicode字元
(2)、雙引號和單引號除了有其各自的逸出字元之外,功能上基本沒有其他區別。
3、字串運算(1)、在=運算子右側書寫字串值,能夠將其賦值給位於等號左側的變數
var s=‘abc‘;
var s2=s;
document.write(s2);
/*
輸出:
abc
*/
(2)、字串類型是不可變類型(3)、可以通過+運算子來連接字串值
var s1=‘012‘;
var s2=‘345‘;
var s3=s1+s2;
document.write(s3);
/*
輸出:
012345
*/
(4)、+=運算子可以在連接字串的同時進行賦值
var s=‘012‘;
var s2=s;
s+=‘345‘;
document.write(s2);
/*
輸出:
012
*/
(5)、可以通過typeof運算子來獲得知值的資料類型
document.write(typeof ‘abc‘;);
/*
輸出:
string
*/
------------------------------------------
var s=‘abc‘
document.write( typeof s);
/*
輸出:
string
*/
var s=‘abc‘;
document.write(typeof (s);)
/*
輸出:
string
*/
------------------------------------------
document.write(typeof ‘abc‘;)
/*
輸出:
string
*/
------------------------------------------
document.write(typeof ‘abc‘;)
/*
輸出:
string
*/
------------------------------------------
document.write( typeof(typeof(s)) );
/*
輸出:
string
*/
4、字串型比較(1)、javascript有兩種等值運算子“===”和“==”。(2)、兩種不等值運算子“!==”和"!="。(3)“===”在比較時不會對資料類型進行轉換。(4)“==”在比較是會對資料類型進行轉換。
var s1=‘012‘;
var s2=‘0‘;
var s3=s1+‘12‘;
s1==s3
>>true
s1!=s3
>>false
s1!==s3
>>false
(5)字串比較時是基於UnIcode字元的編碼錶來比較的
var s1=‘abc‘;
var s2=‘def‘;
s1<s2
>>true
s1<=s2
>>true
s1>s2
>>false
s1>=s2
>>false
5、字串類(string)(1)、字串類的名稱為string。(2)、字串型和string類之間支援隱式類型轉換。
var s=‘012‘;
document.write(s.length);
>>3
document.write(‘012‘.length);
>>3
javascript中書寫‘012‘.length的話(屬於內建類型的)字串會先被隱式地轉換為字串對象,然後在讀取字串對象的length屬性。
參考書籍資料:
1、javascript編程全解http://www.ituring.com.cn/book/1140
2、javascript 嶽英俊http://pan.baidu.com/s/1eQlegKE
來自為知筆記(Wiz)
javascript資料類型(一)