每當讀取乙個基本型別值的時候,後台就會建立乙個對應的基本型別的包裝物件。
基本型別值不是物件 ,所以不該有方法。為了方便操作基本型別值,當讀取基本型別值時,後台會進行一系列處理。eg.
var s1 = "str";
var s2 = s1.substring(2);
後台自動完成下列處理、
1. 建立string型別的乙個例項
2. 在例項上呼叫指定方法
3. 銷毀這個例項
引用型別和基本包裝型別的區別就是物件的生存期。引用型別的例項在執行流離開前作用域一直儲存在記憶體中。基本包裝型別在執行完一行**後即被銷毀,不能在執行時給基本包裝型別新增屬性和方法。
*最好不要顯示地建立基本包裝型別的例項。
*對基本包裝型別呼叫typeof返回object。
*基本包裝型別轉換為boolean型別都為true。
*注意轉型函式和基本包裝型別建構函式的區別。
boolean
型別
布林表示式中所以的物件都會轉化為true
typeof對基本型別返回」boolean」,對引用型別返回」true」
number
型別
tofixed()
返回指定小數字的字串表示
toexponential()
返回指數表示法
toprecision()
返回固定大小格式或指數格式
var num =
99; //1e+2
console.
log(num.toexponential(0));
console.
log(num.toexponential(1));
//1e+2
console.
log(num.toprecision(1));
//99
console.
log(num.toprecision(2));
//990
console.
log(num.toprecision(3));
string
型別
charat()
返回指定位置字元的字串形式
charcodeat()
返回指定位置字元的編碼
concat()
將乙個或多個字串撲街
slice()
摘取乙個字串區域,返回乙個新的字串。
substing()
返回在字串中指定兩個下標之間的字元。
substr()
通過指定字元數返回在指定位置開始的字串中的字元。
var str = 'hello';
console.log(str.slice(3));//lo
console.log(str.substring(3));//lo
console.log(str.substr(3));//lo
console.log(str.slice(3, 4));//l
console.log(str.substring(3, 4));//l
console.log(str.substr(3, 4));//lo
//傳入乙個負值,將負值與字串長度相加-3+5=2
console.log(str.slice(-3));//llo
//substring()將所有負值轉為0
console.log(str.substring(-3));//hello
//傳入乙個負值,將負值與字串長度相加-3+5=2
console.log(str.substr(-3));//llo
//slice()將第二個引數轉化為1,slice(3, 1),返回包含0個字元的字串
console.log(str.slice(3, -4));//
//substirng()將-4,轉化為0,substring()會將較小的數作為開始位置,相當於substring(0, 3);
console.log(str.substring(3, -4));//hel
//substr()將第二個引數轉換為0,suvstr(3, 0)返回包含0個字元的字串
console.log(str.substr(3, -4));//
indexof()
從字串物件中返回首個被發現的給定值的索引值,如果沒有找到則返回-1。
lastindexof()
從字串物件中返回最後乙個被發現的給定值的索引值,如果沒有找到則返回-1。
trim()
從字串的開始和結尾去除空格。
repalce()
被用來在正規表示式和字串直接比較,然後用新的子串來替換被匹配的子串。
repalce()
第乙個引數是字串或regexp物件,第二個引數是字串或乙個函式.如果第乙個引數是字串,只會替換第乙個字元,如果想替換整個字串要指定全域性(g)標誌
var text = "cat, bat, sat, fat";
var result = text.replace("at", "ond");
//cond, bat, sat, fat
console.log(result);
result = text.replace("/at/g", "ond");
//cat, bat, sat, fat
console.log(result);
split()
通過分離字串成字串,將字串物件分割成字串陣列。 基本包裝型別
好久之前看的高程,最近有些忘記了,疑惑基本包裝型別存在的意義,下面總結一下 為了便於操作基本型別,ecmascript提供了三個特殊的引用型別 boolean number string。實際上,每當讀取乙個基本型別值的時候,後台就會建立乙個對應的基本包裝型別的物件,從而讓我們能夠呼叫一些方法來操作...
基本包裝型別
為了便於操作基本資料型別,提供了三個特殊的引用型別,boolean,number和string,這些型別和其他引用型別相似,但是同時也具備和自己相應的資料型別的特殊行為,實際上每當讀取乙個基本型別的數值後,後台都會為我們建立對應的基本包裝型別的物件,從而能夠呼叫一些方法處理這些資料。var box ...
基本包裝型別
基本包裝型別有number boolean string三種。主要用途是擴充套件基本資料型別number boolean string的功能。因為這些基本資料型別本身不具備任何方法。在基本資料型別操作時,比如 abc substr 0,2 在執行這段 時,實際上 abc 是乙個基本資料型別,本身並沒...