學習筆記7 基本包裝型別

2021-08-22 08:22:29 字數 2929 閱讀 2135

每當讀取乙個基本型別值的時候,後台就會建立乙個對應的基本型別的包裝物件。

基本型別值不是物件 ,所以不該有方法。為了方便操作基本型別值,當讀取基本型別值時,後台會進行一系列處理。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 是乙個基本資料型別,本身並沒...