javascript開發基本包裝類型解析

javascript基本包裝類型

三種基本包裝類型:Boolean類型,Number類型,String類型
字面量聲明方式和new聲明方式;

1 Boolean類型:無特定的屬性或方法;

2 Number類型:

1)靜態屬性(直接調用無須new運算符)

MAX_VALUE:最大值;MIN_VALUE:最小值。NaN:非數字。

NEGATIVE_INFINITY:負無窮大,超過返回該值;POSITIVE_INFINITY:無窮大,超過返回該值。

prototype:原型,用於增加新的屬性和方法。

console.log(Number.MAX_VALUE);         //1.7976931348623157e+308
console.log(Number.MIN_VALUE);         //5e-324
console.log(Number.NaN);               //NaN
console.log(Number.NEGATIVE_INFINITY); //-Infinity
console.log(Number.POSITIVE_INFINITY); //Infinity
Number.prototype.age=1;
var number=new Number();
console.log(number.age)                //1

2)Number對象的方法:

toString():將數值轉化為字符串,並且可以轉化進制。

toLocaleString():根據本地數字轉化為字符串;

tofixed():將數字保留指定位數,轉化為字符串;

var number=1200100;
console.log(number.toString(8));          //4447744 以8進制輸出,不傳參默認十進制
console.log(number.toLocaleString());     //1,200,100
console.log(number.toFixed(2));           //1200100.00

3 String類型:

3個屬性:

length:返回字符串的字符長度;

constructor:返回創建String對象的函數;

prototype:通過添加屬性方法擴展字符串定義;

var str='1234';
console.log(str.length);        //4                              
console.log(str.constructor);   //function String()
String.prototype.age=1;         //添加屬性
console.log(str.age)            //1

內置方法:

1 字符方法:

charAt(n):返回指定位置索引的字符;

charCodeAt(n):以unicode編碼形式返回指定位置的索引。

var str='abcd';
console.log(str.charAt(0));       //a
console.log(str.charCodeAt(0));   //97

2 字符串操作方法:

concat(str1…strr2):將字符串參數串聯到調用該方法的字符串;

var str='abcd';
console.log(str.concat('efg'));   //abcdefg
console.log(str);                 //abcd

slice(n,m):返回字符串n到m之間位置的字符串;

var str='abcd';
console.log(str.concat('efg'));   //abcdefg
console.log(str.slice(0,1));      //a
console.log(str.slice(-1));        //d
console.log(str.slice(1,-1));     //bc
console.log(str.slice(-3,-1));    //bc
console.log(str);                 //abcd

負數表示從後面開始數。

substring(n,m):同上;

var str='abcd';
console.log(str.substring(0,1));   //a
console.log(str.substring(0));     //abcd
console.log(str.substring(1,-1));  //a     第二個為負數直接轉正,把較小的數字提前
console.log(str.substring(-1));    //abcd  負數返回所有
console.log(str)                   //abcd

substr(n,m):返回從n位置開始的m個字符串。

var str='abcd';
console.log(str.substr(0,1));   //a
console.log(str.substr(-1));    //d
console.log(str.substr(-1,1))   //d
console.log(str)                //abcd

第二個參數為負直接轉0

3 字符串位置方法:

indexOf(str,n):從n位置開始搜索的第一個str,返回索引值;

lastIndexOf(str,n):從n開始搜索的最後一個str,返回索引值;

var str='abcdb';
console.log(str.indexOf('b'));      //1
console.log(str.indexOf('b',0));    //1
console.log(str.indexOf('b',1));    //1
console.log(str.indexOf('b',2));    //4
console.log(str.indexOf('f',1));    //-1
console.log(str.lastIndexOf('b'));  //1
console.log(str.lastIndexOf('b',1));//1
console.log(str.lastIndexOf('f',1));//-1

如果沒有找到返回-1;

查找指定所有字符:

var str='Mr.Lee is Lee';
var strarr=[];           
var pos=str.indexOf('L');
while(pos>-1){
	strarr.push(pos);
	pos=str.indexOf('L',pos+1);
}
console.log(strarr)

4 大小寫轉化方法:

toLowerCase():將字符串轉化為小寫;

toUpperCase():將字符串轉化為大寫;

toLoCaleUpperCase():將字符串轉化為大寫,並且本地化;

toLoCaleLowerCase():將字符串轉化為小寫,並且本地化。

var str1='abcd';
var str2='ABCD';
console.log(str1.toLowerCase());       //abcd
console.log(str2.toUpperCase());       //ABCD
console.log(str1.toLocaleLowerCase()); //abcd
console.log(str2.toLocaleUpperCase()); //ABCD

5 字符串的模式匹配方法:

match(pattern):返回pattern中的子串或null;

replace(pattern,replacement):用replacement替換pattern;

search(pattern):返回字符串中pattern的開始位置;

split(pattern):返回字符串按指定pattern拆分的數組。

var str='abcd';
var pattern='b';
console.log(str.match(pattern));       //['b']
console.log(str.replace(pattern,'AB'));//[aABcd]
console.log(str.search(pattern));      //1
console.log(str.split(pattern));       //['a','cd']

6 其它方法:

fromCharCode(ascii):返回Ascii對應值;

localeCompare(str1,str2):比較兩個字符串,並返回相應的值;

console.log(String.fromCharCode(76));  //L

發佈留言