0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

如何訪問對象屬性

CHANBAEK ? 來源:myfreax ? 作者:myfreax ? 2022-12-07 09:34 ? 次閱讀

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對象有兩個屬性firstNamelastName對應(yīng)的值是'John''Doe'。

訪問對象屬性

要訪問對象的屬性,可以有兩種訪問方式,第一種是點(diǎn)表示法和數(shù)組的索引表示法。

代碼objectName.propertyName使用點(diǎn)符號來訪問對象的屬性,例如代碼person.firstName訪問person對象的firstName屬性。

代碼objectName['propertyName']通過數(shù)組的表示法訪問對象屬性的值。當(dāng)屬性名稱包含空格時,您需要將其放在單引號或者雙引號內(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檢查對象中是否存在ssnemployeeId屬性。

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)算符可以檢查對象否存在指定屬性。

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • 字符串
    +關(guān)注

    關(guān)注

    1

    文章

    579

    瀏覽量

    20518
  • 對象
    +關(guān)注

    關(guān)注

    1

    文章

    38

    瀏覽量

    17391
  • javascript
    +關(guān)注

    關(guān)注

    0

    文章

    516

    瀏覽量

    53866
收藏 人收藏

    評論

    相關(guān)推薦

    標(biāo)準(zhǔn)的ORTI對象屬性

    本帖最后由 dianzijie5 于 2011-7-12 17:39 編輯 標(biāo)準(zhǔn)的ORTI對象屬性:OS對象,包含正在運(yùn)行的任務(wù)、正在運(yùn)行的優(yōu)先級、正在運(yùn)行的中斷處理程序、操作系統(tǒng)服務(wù)、最近
    發(fā)表于 07-12 15:50

    標(biāo)準(zhǔn)的ORTI對象屬性

    本帖最后由 dianzijie5 于 2011-7-12 17:32 編輯 標(biāo)準(zhǔn)的ORTI對象屬性:OS對象,包含正在運(yùn)行的任務(wù)、正在運(yùn)行的優(yōu)先級、正在運(yùn)行的中斷處理程序、操作系統(tǒng)服務(wù)、最近
    發(fā)表于 07-12 17:18

    【初級】labview教程每日一教之10局部與全局變量+11屬性節(jié)點(diǎn)

    了。屬性節(jié)點(diǎn)用于訪問對象屬性。在某些應(yīng)用程序中,可能需要通過編程使前面板對象對特定的輸入作出響應(yīng),使其顯示不同的外觀。 例如,當(dāng)用戶輸入一
    發(fā)表于 11-04 09:31

    對象存儲與傳統(tǒng)網(wǎng)絡(luò)存儲有什么區(qū)別?

    OSD命令訪問對象。通常有多種類型的對象,存儲設(shè)備上的根對象標(biāo)識存儲設(shè)備和該設(shè)備的各種屬性,組對象
    發(fā)表于 09-01 16:27

    JavaScript 【2】對象

    · Ruby 和 Perl 中的哈希表訪問對象屬性你可以通過兩種方式訪問對象屬性:實(shí)例 1per
    發(fā)表于 07-17 10:33

    如何配置MMU page table walk的訪問屬性

    對全部頁表項訪問屬性(Cacheability, Shareability)是通過寄存器TCR_ELx.IRGNy, TCR_ELx.ORGNy, TCR_ELx.SHy (x=1, 2 or 3
    發(fā)表于 10-24 15:45

    基于屬性和規(guī)則的訪問控制模型

    針對分布式服務(wù)環(huán)境中用戶數(shù)目大量增長和資源訪問策略復(fù)雜多樣化的問題,分析目前訪問控制模型的應(yīng)用局限性,提出多用戶服務(wù)模式中一種基于屬性和規(guī)則的訪問控制模型。該
    發(fā)表于 04-18 08:42 ?18次下載

    基于屬性的Web服務(wù)安全訪問控制方案

    本文基于Web 服務(wù)的典型應(yīng)用的安全需求,將Web 服務(wù)安全規(guī)范協(xié)同使用設(shè)計了基于屬性的Web 服務(wù)安全訪問控制方案,將安全應(yīng)用于SOAP 消息,為Web 服務(wù)安全提供整體的解決方案,
    發(fā)表于 06-19 11:25 ?18次下載

    基于屬性訪問控制方法中的策略定義研究

    基于屬性訪問控制(ABAC)是面向Web Service應(yīng)用的一種新的訪問控制方法??蓴U(kuò)展訪問控制標(biāo)記語言XACML是一種支持該方法的重要規(guī)范,它給出了ABAC策略執(zhí)行框架以及ABA
    發(fā)表于 08-14 14:57 ?21次下載

    基于區(qū)分對象集的啟發(fā)式屬性約簡算法

    基于正域的屬性約簡算法是利用下近似思想,僅考慮被正確區(qū)分樣本數(shù)的約簡算法。借鑒上近似的思想,利用鄰域信息粒的概念定義了區(qū)分對象集,探討了其基本性質(zhì),并提出了基于區(qū)分對象集的屬性重要度度
    發(fā)表于 01-05 11:28 ?0次下載

    labview屬性節(jié)點(diǎn)教程,屬性節(jié)點(diǎn)有什么作用?

    控件的大部分屬性都可以通過屬性對話框ā行設(shè)置,對于未包括的屬性則需要通過屬性節(jié)點(diǎn)來編程操作了。屬性節(jié)點(diǎn)用于
    發(fā)表于 08-13 08:00 ?0次下載
    labview<b class='flag-5'>屬性</b>節(jié)點(diǎn)教程,<b class='flag-5'>屬性</b>節(jié)點(diǎn)有什么作用?

    LabVIEW初級教程之屬性節(jié)點(diǎn)初級課程的詳細(xì)資料說明

    控件的大部分屬性都可以通過屬性對話框a行設(shè)置,對于未包括的屬性則需要通過屬性節(jié)點(diǎn)來編程操作了。屬性節(jié)點(diǎn)用于
    發(fā)表于 01-17 16:19 ?11次下載
    LabVIEW初級教程之<b class='flag-5'>屬性</b>節(jié)點(diǎn)初級課程的詳細(xì)資料說明

    關(guān)于組態(tài)CPU的訪問保護(hù)淺析

    設(shè)置訪問等級和密碼后,需輸入密碼才能訪問功能和存儲區(qū)。將在 CPU 的對象屬性中指定各種訪問級別及其關(guān)聯(lián)的密碼。
    的頭像 發(fā)表于 04-12 14:36 ?4259次閱讀
    關(guān)于組態(tài)CPU的<b class='flag-5'>訪問</b>保護(hù)淺析

    如何訪問庫遷移器的相關(guān)屬性面板

    庫遷移器的相關(guān)屬性面板設(shè)置提供了對所選庫(或子庫組)的遷移配置的高級控制??梢杂幸韵氯N方式訪問屬性面板。
    的頭像 發(fā)表于 07-22 09:39 ?907次閱讀

    CPU的訪問保護(hù)與訪問級別

    設(shè)置訪問等級和密碼后,需輸入密碼才能訪問功能和存儲區(qū)。將在 CPU 的對象屬性中指定各種訪問級別及其關(guān)聯(lián)的密碼。
    的頭像 發(fā)表于 09-14 16:08 ?2790次閱讀