首頁 > web前端 > js教程 > javascript如何為物件新增、修改或刪除屬性和方法實例詳解

javascript如何為物件新增、修改或刪除屬性和方法實例詳解

伊谢尔伦
發布: 2017-07-21 09:45:58
原創
1872 人瀏覽過

介紹如何為一個物件新增、修改或刪除屬性和方法。在其他語言中,物件一旦生成,就不可更改了,要為一個物件添加修改成員必須要在對應的類別中修改,並重新實例化,而且程式必須經過重新編譯。 JavaScript 中並非如此,它提供了一個靈活的機制來修改物件的行為,可以動態新增、修改、刪除屬性和方法。例如先使用類別Object來建立一個空物件user:

var user=new Object();
登入後複製

1.新增屬性
這時user 物件沒有任何屬性和方法,顯然沒有任何用途。但可以為它動態的新增屬性和方法,例如:

user.name=”jack”;
user.age=21;
user.sex=”male”;
登入後複製

透過上述語句,user 物件便有了三個屬性:name、age和sex。下面輸出這三個語句:

alert(user.name);
alert(user.age);
alert(user.sex);
登入後複製

由程式碼運行效果可知,三個屬性已經完全屬於user 物件了。

2.添加方法
添加方法的過程和屬性類似:

user.alert=function(){
alert(“my name is:”+this.name);
}
登入後複製

這就為user 物件添加了一個方法“alert”,透過執行它,可以彈出一個對話框顯示自己的名字介紹:

user.alert();
登入後複製

3.修改屬性
修改一個屬性的過程就是用新的屬性取代舊的屬性,例如:

user.name=”tom”;
user.alert=function(){
alert(“hello,”+this.name);
}
登入後複製

這樣就修改了user 物件name屬性的值和alert方法,它從顯示“my name is”變成為了顯示“hello”。

4.刪除屬性
刪除一個屬性的過程也很簡單,就是將其置為undefined:

user.name=undefined;
user.alert=undefined;
登入後複製

這樣就刪除了name屬性和alert方法。在之後的程式碼中,這些屬性變的不可用。
在新增、修改或刪除屬性時,和引用屬性相同,也可以採用方括號([])語法:

user[“name”]=”tom”;
登入後複製

使用這種方式還有一個額外的特點,就是可以使用非識別字串作為屬性名稱,例如
標識符中不允許以數字開頭或出現空格,但在方括號([])語法中卻可以使用:

user[“my name”]=”tom”;
登入後複製

需要注意,在使用這種非識別符作為名稱的屬性時,仍然要用方括號語法來引用:

alert(user[“my name”]);
登入後複製

而不能寫為:

alert(user.my name);
登入後複製

利用物件的這種性質,甚至可以輕鬆實現一個簡單的雜湊表,在本書的後面將會看到其應用。此可見,JavaScript中的每個物件都是動態可變的,這為程式設計帶來了很大的靈活性,也和其他語言產生了很大的區別,讀者可以體會這種性質。

以上是javascript如何為物件新增、修改或刪除屬性和方法實例詳解的詳細內容。更多資訊請關注PHP中文網其他相關文章!

相關標籤:
來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板