在JavaScript對象的屬性是無序的集合。每個鍵值對稱為一個屬性。對象屬性的鍵可以是字符串。屬性的值可以是任何值,例如字符串、數(shù)字、數(shù)組,甚至是函數(shù)。
JavaScript為您提供多種創(chuàng)建對象的方法。最常用的一種是使用對象字面量創(chuàng)建對象。
代碼let empty = {};使用對象字面量創(chuàng)建一個空對象。要創(chuàng)建具有屬性的對象,請在大括號添加鍵值對作為屬性。
代碼let person = { firstName: 'John', lastName: 'Doe'};創(chuàng)建person對象。person對象有兩個屬性firstName和lastName對應的值是'John'和'Doe'。
訪問對象屬性
要訪問對象的屬性,可以有兩種訪問方式,第一種是點表示法和數(shù)組的索引表示法。
代碼objectName.propertyName使用點符號來訪問對象的屬性,例如代碼person.firstName訪問person對象的firstName屬性。
代碼objectName['propertyName']通過數(shù)組的表示法訪問對象屬性的值。當屬性名稱包含空格時,您需要將其放在單引號或者雙引號內。
例如要訪問address對象的'building no'屬性,您需要使用數(shù)組的表示法,例如代碼console.info(address['building no']);。
let person = {
firstName: 'John',
lastName: 'Doe'
};
console.log(person.firstName);
let address = {
'building no': 3960,
street: 'North 1st street',
state: 'CA',
country: 'USA'
};
console.info(address['building no']);
如果你以點表示法訪問帶有空格的對象屬性,例如代碼address.'building no';。你將會得到錯誤消息SyntaxError: Unexpected string。
通常不建議在對象的屬性名稱使用空格。如果訪問對象不存在的屬性將會返回undefined。例如代碼console.log(address.district);。
修改屬性的值
要更改屬性的值,您可以使用賦值運算符=。在以下示例中,我們將person對象的firstName屬性值更改為'Jane'。
let person = {
firstName: 'John',
lastName: 'Doe'
};
person.firstName = 'Jane';
console.log(person);
添加對象屬性
與Java和C#等其他編程語言中的對象不同,您還可以在創(chuàng)建對象后向對象添加屬性。代碼person.age = 25;將age屬性添加到person對象并設置屬性值是25。
person.age = 25;
刪除對象屬性
要刪除對象的屬性,您可以使用運算符delete。代碼語法是delete objectName.propertyName;。
例如代碼delete person.age;從person對象中刪除屬性age。如果您嘗試重新訪問 age屬性,您將獲得undefined值。
delete person.age;
檢查對象屬性是否存在
要檢查對象中是否存在屬性,可以使用運算符in。代碼語法是propertyName in objectName。如果對象中存在屬性,in運算符返回true,否則返回false。
以下示例創(chuàng)建employee對象并使用運算符in檢查對象中是否存在ssn和employeeId屬性。
let employee = {
firstName: 'Peter',
lastName: 'Doe',
employeeId: 1
};
console.log('ssn' in employee);
console.log('employeeId' in employee);
結論
對象是鍵值對的集合。可以使用點符號 .或數(shù)組的符號[]訪問對象的屬性。delete運算符可以在對象刪除屬性。in運算符可以檢查對象否存在指定屬性。
-
字符串
+關注
關注
1文章
596瀏覽量
23166 -
對象
+關注
關注
1文章
38瀏覽量
17735 -
javascript
+關注
關注
0文章
526瀏覽量
56331
發(fā)布評論請先 登錄
使用DevEcoStudio 開發(fā)、編譯鴻蒙 NEXT_APP 以及使用中文插件
標準的ORTI對象及屬性
標準的ORTI對象及屬性
【初級】labview教程每日一教之10局部與全局變量+11屬性節(jié)點
如何配置MMU page table walk的訪問屬性
基于屬性和規(guī)則的訪問控制模型
基于屬性的Web服務安全訪問控制方案
基于屬性訪問控制方法中的策略定義研究
基于區(qū)分對象集的啟發(fā)式屬性約簡算法
labview屬性節(jié)點教程,屬性節(jié)點有什么作用?
LabVIEW初級教程之屬性節(jié)點初級課程的詳細資料說明
如何訪問對象屬性
評論