欧美一区二区三区,国内熟女精品熟女A片视频小说,日本av网,小鲜肉男男GAY做受XXX网站

javascript 屬性詳解

錢斌斌1年前8瀏覽0評論
JavaScript是一種基于對象的編程語言,它具有強大的屬性確立機制。屬性是指對象的特征或者屬性,在JavaScript中,屬性可以分為兩種:基本屬性和引用屬性?;緦傩允侵负唵蔚淖兞款愋?,比如字符串、數值、布爾值等,而引用屬性則是一種對象類型,其中包括對象、數組、函數等。在本文中,我們將詳細介紹JavaScript屬性的六個方面:創建屬性、刪除屬性、設置屬性特性、訪問器屬性、訪問對象的原型和重寫對象的toString方法。 一、創建屬性 在JavaScript中,我們可以通過以下兩種方法來創建屬性: 1. 對象字面量方式 我們可以通過對象字面量的方式創建對象,并在對象中添加屬性。例如:
var student = {
name: "Tom",
age: 18,
gender: "男",
study: function(){
console.log("學習中。。。");
}
}
2. 動態創建屬性 我們可以動態地給對象添加屬性。例如:
var student = {}
student.name = "Tom";
student.age = 18;
student.gender = "男";
student.study = function(){
console.log("學習中。。。");
}
二、刪除屬性 我們可以使用delete操作符來刪除對象的屬性。例如:
var student = {
name: "Tom",
age: 18,
gender: "男"
}
delete student.age;
三、設置屬性特性 在JavaScript中,我們可以通過設置屬性的特性來控制屬性的讀寫行為。常見的屬性特性包括可枚舉屬性、可配置屬性、可寫屬性和唯一屬性。 1. 可枚舉屬性 可枚舉屬性是指屬性是否會出現在for...in循環中。默認情況下,除非特別指定,所有屬性都是可枚舉的。我們可以使用Object.defineProperty()方法來設置屬性是否可枚舉。例如:
var student = {}
Object.defineProperty(student, "name", {
value: "Tom",
enumerable: true
});
2. 可配置屬性 可配置屬性是指屬性是否可以被刪除或修改。默認情況下,所有屬性都是可配置的。我們可以使用Object.defineProperty()方法來設置屬性是否可配置。例如:
var student = {
name: "Tom"
}
Object.defineProperty(student, "name", {
configurable: false
});
delete student.name; //刪除不了
3. 可寫屬性 可寫屬性是指屬性是否可以被修改。默認情況下,所有屬性都是可寫的。我們可以使用Object.defineProperty()方法來設置屬性是否可寫。例如:
var student = {
name: "Tom"
}
Object.defineProperty(student, "name", {
writable: false
});
student.name = "Jerry"; //不起作用,值仍然為Tom
4. 唯一屬性 唯一屬性是指屬性是否只能出現一次。我們可以使用Object.defineProperty()方法來設置屬性是否唯一。例如:
var student = {}
Object.defineProperty(student, "name", {
value: "Tom",
writable: false,
configurable: false,
enumerable: false,
unique: true
});
Object.defineProperty(student, "name", {
value: "Jerry",
writable: true
}); //出錯,屬性已經存在且唯一
四、訪問器屬性 訪問器屬性是指一種特殊的屬性,它不能直接存儲數據,而是定義了一對getter和setter方法,以便讀取或修改屬性。我們可以使用Object.defineProperty()方法來定義訪問器屬性。例如:
var student = {
name: "Tom"
}
Object.defineProperty(student, "fullName", {
get: function(){
return this.name;
},
set: function(val){
this.name = val;
}
});
console.log(student.fullName); //輸出Tom
student.fullName = "Jerry";
console.log(student.fullName); //輸出Jerry
五、訪問對象的原型 每個JavaScript對象都有一個原型,它是該對象的屬性和方法的默認值。我們可以通過對象的__proto__屬性來訪問它的原型。例如:
var student = {
name: "Tom"
}
console.log(student.__proto__); //輸出Object {}
六、重寫對象的toString方法 JavaScript中的每個對象都有一個toString()方法,它將該對象轉換為字符串。我們可以通過重寫toString()方法來自定義對象的字符串表示形式。例如:
var student = {
name: "Tom",
age: 18,
gender: "男",
toString: function(){
return "姓名:" + this.name + " 年齡:" + this.age + " 性別:" + this.gender;
}
}
console.log(student.toString()); //輸出姓名:Tom 年齡:18 性別:男
總結 本文介紹了JavaScript屬性相關的六個方面:創建屬性、刪除屬性、設置屬性特性、訪問器屬性、訪問對象的原型和重寫對象的toString方法。掌握了這些知識點,我們可以更好地理解和運用JavaScript中的屬性機制,從而使我們的編程更加高效和精準。