基本包裝類型

基本包裝類型正則表達式

爲了便於操做基本類型值,ECMAScript還提供了3個特殊的引用類型:Boolean,Number和String.這些類型與其餘引用類型類似,但同時也具備各自的基本類型相應的特殊行爲。數組

1.基本包裝類型概念與Bollean,Number類型函數

(1)每當讀取一個基本類型值的時候,後臺就會自動建立一個對應的基本包裝類型的對象。並且,此對象只存在於一行代碼的執行瞬間,而後當即被銷燬。編碼

(2)把字符串,數字,布爾值傳給構造函數會獲得對應的實例。對基本包裝類型的實例調用typeof會返回「object」。要注意,使用new操做符調用基本類型的構造函數,與直接調用同名的轉型函數是不同的。spa

(3)Boolean類型:須要注意的是,使用構造函數建立布爾的對象進行布爾運算時,對象都會被轉換爲true。code

(4)Number類型:toString()將數字轉換成字符串,接收一個參數,告訴它返回幾進制                 toFixed()會按照指定的小數位返回數值的字符串表示,而且會自動舍入對象

                                toExponential()返回以指數表示法表示的字符串形式,參數決定小數位            toPrecision()自動調用適合的方法blog

 1 /*var s1="some text";
 2 var s2=s1.substring(2);         //基本包裝類型也有方法
 3 
 4 var s1=new String("some text");
 5 var s2=s1.substring(2);
 6 s1=null;                         //能夠這樣理解爲何基本類型會有方法
 7 s1.color="red";
 8 alert(s1.color);                 //自動建立的基本包裝類型對象只存在於代碼建立的一瞬間,undefined*/
 9 
10 var value="25";
11 var number=Number(value);
12 alert(typeof number);            //number
13 var obj=new Number(value);
14 alert(typeof obj);               //object
15 /*把字符串,數字,布爾值傳給構造函數就會建立相應的實例,對基本包裝類型的實例調用typeof會返回object*/
16 
17 /*Boolean類型*/
18 var falseObject=new Boolean(false);
19 var result=falseObject&&true;
20 alert(result);                   //true
21 var falseValue=false;
22 result=falseValue&&true;
23 alert(result);                   //false
24 
25 /*Number類型*/
26 var num=10;
27 alert(num.toString());//"10"
28 alert(num.toString(2));//"1010"
29 alert(num.toString(8));//"12"
30 
31 alert(num.toFixed(2));//10.00此方法還會四捨五入
32 
33 var num=99;
34 alert(num.toPrecision(1));//"1e+2"
35 alert(num.toPrecision(2));//"99"
36 alert(num.toPrecision(3));//"99.0"

2.基本包裝類型--String類型ip

(1)字符方法:charAt()返回對應參數位置的字符          charCodeAt()返回對應字符的編碼          ECMAScript5支持使用方括號來訪問字符串中的特定字符ci

(2)字符串操做方法:concat()與Array的同樣,往字符串後添加多個字符串          

slice():接收兩個參數,第一個參數指定開始位置,第二個參數指定到哪裏結束,當參數有負數時,此方法會將傳入的負數與字符串的長度相加

substring():接收兩個參數,第一個參數指定從哪裏開始,第二個參數指定從哪裏結束。當有負數時,此方法會把全部的負數都變成0,另外substring(3,0)==substring(0,3)

substr():接收兩個參數,第一個指定從哪裏開始,第二個參數指定返回的字符串的個數。當有負數時,此方法會負的第一個參數加上字符串的長度

(3)位置方法indexOf()和lastIndexOf(),利用這兩種位置方法,能夠找到全部匹配的字符,並返回位置

(4)trim():刪除字符串先後的全部空格

(5)大小寫轉換toLowerCase()和toUpperCase()

(6)match()與replace()方法都與正則表達式聯合起來使用,match()聯合正則,將匹配到的字符轉換成數組返回。replace()顧名思義,替換匹配到字符。

(7)localeCompare()比較倆個字符串

(8)fromCharCode()接收多個字符編碼,而後將它們轉換成字符串

 1 var stringValue="hello world";
 2 alert(stringValue.charAt(1));  //"e"相應位置的字符
 3 
 4 alert(stringValue.charCodeAt(1));//"101"字符的編碼
 5 
 6 var stringValue="hello ";
 7 var result=stringValue.concat("world");
 8 alert(result);  //"hello world" 與數組的concat方法同樣
 9 
10 /*利用兩種位置方法,找到全部匹配的字符,並返回位置*/
11 var stringValue="Lorem ipsum dolor sit amet,consectetur adipisicing elit";
12 var positions=new Array();
13 var pos=stringValue.indexOf("e");
14 while(pos>-1){
15     positions.push(pos);
16     pos=stringValue.indexOf("e",pos+1);};
17 alert(positions); //"3,24,32,35,52"
18 
19 var text="cat,bat,sat,fat";
20 var pattern=/.at/;
21 var matchs=text.match(pattern);
22 alert(matchs.index);//0
23 alert(matchs[0]);//"cat"
24 alert(matchs.lastIndex);//0
25 
26 var pos=text.search(/at/);
27 alert(pos);//1
28 
29 var result=text.replace("at","ond");
30 alert(result);//"cond,bat,sat,fat"
31 result=text.replace(/at/g,"ond");
32 alert(result);//"cond,bond,sond,fond"
33 
34 result=text.replace(/(.at)/g,"word($1)");
35 alert(result);//word(cat),word(bat),word(sat),word(fat)
相關文章
相關標籤/搜索