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