JavaScript物件 包裝類

2021-08-11 07:28:35 字數 1333 閱讀 6034

1.物件字面量/物件直面量

var obj ={};
2.建構函式

// 1.系統自帶的建構函式object()

var obj = new

object();

// 2.自定義(自定義建構函式名第乙個字母建議大寫)

function

car(color)

//...

}var car1 = new car('red');

var car2 = new car('green');

建構函式內部原理

// 當系統使用new關鍵字呼叫該函式時,系統會在函式前面隱式建立乙個空物件,然後再函式末尾返回this;

function

car(color)

this.color = color;

this.name = "bmw";

this.height = "1000";

this.lenght = "5500";

this.health = 100;

this.run = function

() //...

// return this;

}

為了便於操作「基本型別值」,js 提供了 三個 特殊的引用型別:boolean、number、string。這些型別和其他引用型別相似,但同時 也具備 與各自基本型別相應的特殊行為。 實際上:每當讀取乙個基本型別值的時候, 「後台就會建立乙個 對應的基本包裝型別的物件」,從能能夠呼叫一些方法來操作這些資料。 

引用型別和基本包裝型別的主要區別就是物件的生存期;

自動建立的基本包裝型別的物件,則只存在於一行**的執行瞬間,然後立即被銷毀;

這意味著我們不能在執行時為基本型別值新增屬性和方法;

舉例說明

var str = "abcd";

str.length = 2;

console.log(str);

誤以為輸出結果為ab,而實際輸出結果為abcd;

var str = "abcd";

str.length = 2;

//實際執行為,new string("abcd"),

//然後new string("abcd").length = 2,然後delete銷毀這個物件,與前面的物件無關,所以後面訪問str時,還是abcd

console.log(str);

詳細閱讀:

javascript包裝物件

js物件是一種復合值 它是屬性或已命名值得集合。參考以下 var s hello world varlen s.length 在該例子中,s是字串,而字串不是物件,但為何會有屬性呢?其實只要引用了字串s的屬性,js就會將字串通過呼叫new string s 的方式轉換為物件,該物件繼承了字串的方法,...

物件,包裝類

物件的增刪改查 物件的建立方法 1 var obj plainobject 物件字面量 物件直接量 2 建構函式 1 系統自帶的建構函式 new object 2 自定義 var obj new object a,b,c obj.屬性 屬性值 可以改變新物件裡面的內容。建構函式 寫法和函式相同,要符...

包裝類 包裝類物件 包裝類的型別轉換功能 已完結

在敘述前首先區分三者間的關係 因為在複習過程中,發現自己傻傻分不清 1.包裝類 js提供了三個包裝類 boolean string number 這兒不是基本資料型別中的boolean string number。上述是包裝類,是物件 2.包裝 類 物件 使用new boolean string n...