国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

js獲取對象屬性值的方法

這篇具有很好參考價值的文章主要介紹了js獲取對象屬性值的方法。希望對大家有所幫助。如果存在錯誤或未考慮完全的地方,請大家不吝賜教,您也可以點擊"舉報違法"按鈕提交疑問。

場景:已知對象的某屬性,我們需要獲取對象中的屬性值

js獲取對象屬性值的方法

  1. 通過 . 獲取
  2. 通過 [ ] 獲取
        let person = {
            name: "bob", age: 18
        };
        // 通過 [] 獲取  bob
        console.log(person['name']);  // 加引號,識別為屬性去對象中查找
        // 通過 . 獲取  bob
        console.log(person.name);  

接下來介紹一下兩種方法的不同點

  • [ ]運算符可以用數(shù)字作為屬性名,點運算符不能
        let p = {
            1: 'Alex', 2: 33
        }
        console.log(p[1]);  // Alex
        console.log(person.1);  // 報錯 Uncaught SyntaxError: missing ) after argument list
  • [ ]運算符可以用變量作為屬性名,點運算符不能
        let person = {
            name: "bob", age: 18
        };
        let key = 'name';
        console.log(person[key]);  // bob  不加引號,識別為變量
        console.log(person.key);  // undefined

ps:
用變量key獲取對象中的屬性值時,點運算符會將key視為一個屬性去對象中查找,對象中沒有這個屬性,因此為undefined
在用 [ ] 獲取值時,需要注意的是 [ ] 中是否要加引號

  • 補充:可選鏈運算符 ?.

可選鏈運算符(?.)允許讀取位于連接對象鏈深處的屬性的值,而不必明確驗證鏈中的每個引用是否有效。?. 運算符的功能類似于 . 鏈?zhǔn)竭\算符,不同之處在于,在引用為空 (nullish ) (null 或者 undefined) 的情況下不會引起錯誤,該表達(dá)式短路返回值是 undefined。與函數(shù)調(diào)用一起使用時,如果給定的函數(shù)不存在,則返回 undefined。

我們在訪問對象中一個深度嵌套的子屬性,需要驗證之間的引用,如:

let nestedProp = obj.first && obj.first.second

為了避免報錯,在訪問obj.first.second之前,要保證 obj.first 的值既不是 null,也不是 undefined。如果只是直接訪問 obj.first.second,而不對 obj.first 進行校驗,則有可能拋出錯誤。

有了可選鏈運算符(?.),在訪問 obj.first.second 之前,不再需要明確地校驗 obj.first 的狀態(tài),再并用短路計算獲取最終結(jié)果:文章來源地址http://www.zghlxwxcb.cn/news/detail-431195.html

let nestedProp = obj.first?.second;

到了這里,關(guān)于js獲取對象屬性值的方法的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來自互聯(lián)網(wǎng)用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如若轉(zhuǎn)載,請注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實不符,請點擊違法舉報進行投訴反饋,一經(jīng)查實,立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費用

相關(guān)文章

  • js之刪除對象屬性的三種方法 & 判斷對象中是否有某一屬性的四種方法

    js之刪除對象屬性的三種方法 判斷對象中是否有某一屬性的四種方法 示例 1、基礎(chǔ)版 2、進階版 1、刪除一個對象上的屬性 1.1、delete 語法 delete 對象.屬性名 1.2、es6之解構(gòu)賦值 1.3、es6之反射 語法 Reflect.deleteProperty(對象,屬性名) 2、判斷對象中是否有某一屬性的四種方法 2.1、

    2024年02月13日
    瀏覽(21)
  • js在數(shù)組對象中添加和刪除鍵值對(對象屬性)的方法

    添加 1.Object.assign():用法-Object.assign(源對象, {要添加的鍵值對}) 2.拓展運算符(...):用于取出參數(shù)對象所有可遍歷屬性然后拷貝到當(dāng)前對象 3.object[key] = value:直接給新的key賦值 刪除 1.將屬性設(shè)置為 undefined:屬性本身仍將存在于對象中,它還會改變原始對象。 2.使用 delete 操

    2024年02月14日
    瀏覽(30)
  • js中對象的屬性要注意的點以及在vue中watch對象的屬性的方法

    取對象值有兩種方式, const obj={ a:\\\'1\\\' } obj.a或者obj[\\\'a\\\'],中括號還可以寫成 const name = \\\'a\\\' obj[name]和obj[\\\'a\\\']是一個意思。 然后在vue的watch要監(jiān)聽對象的屬性,寫法是 watch:{ \\\'obj.a\\\'(new,old){} } 這樣的方式。 然后對象的深度拷貝可以通過自己手寫遞歸來實現(xiàn),也可以通過JSON.parse(JSON.str

    2024年02月21日
    瀏覽(29)
  • JS 之 事件Event對象詳解(屬性、方法、自定義事件)

    JS 之 事件Event對象詳解(屬性、方法、自定義事件)

    一、Event對象 1、簡介 ? 事件 event 對象是指在瀏覽器中觸發(fā)事件時,瀏覽器會自動創(chuàng)建一個 event 對象,其中存儲了本次事件相關(guān)的信息,包括事件類型、事件目標(biāo)、觸發(fā)元素等等。瀏覽器創(chuàng)建完 event 對象之后,會自動將該對象作為參數(shù)傳遞給綁定的事件處理函數(shù),我們可以

    2024年02月09日
    瀏覽(25)
  • JavaScript   string對象(屬性,方法)獲取圖片后綴案例   輸入和輸出結(jié)果轉(zhuǎn)換形式案例

    JavaScript string對象(屬性,方法)獲取圖片后綴案例 輸入和輸出結(jié)果轉(zhuǎn)換形式案例

    一、創(chuàng)建string對象 var strOb = new String(\\\"abcefg\\\"); var strOb = String(\\\"abcefg\\\"); var strOb = \\\"abcefg\\\"; 二、屬性 length ? ?(字符串長度) 三、方法 1、子字符串位置 indexOf(string, [ index]) string : 查找的字符串的內(nèi)容,必填項 index:開始查找位置,可有可無 返回值:返回值是查找到的子字符串的位

    2024年02月05日
    瀏覽(23)
  • Vue3前端開發(fā),如何獲取組件內(nèi)dom對象以及子組件的屬性和方法

    Vue3前端開發(fā),如何獲取組件內(nèi)dom對象以及子組件的屬性和方法

    Vue3前端開發(fā),借助Ref來獲取組件內(nèi)dom對象,借助defineExpose編譯宏可以獲取到子組件的屬性和方法。 app入口文件,我們作為父組件,在里面調(diào)用了自定義組件TestCom.vue。 先做了一個測試,借助于ref來訪問自身的dom對象。如圖所示是可以拿到的。 ref又稱謂鉤子函數(shù),在vue2版本中

    2024年01月22日
    瀏覽(40)
  • 后端用對象接收json時,對象無法獲取值的問題

    后端用對象接收json時,對象無法獲取值的問題

    在項目里做前端傳json到后端處理數(shù)據(jù)時,由于傳遞的json比較復(fù)雜,故用對象進行接收,但在postman測試時發(fā)現(xiàn)無論如何對象都沒法成功接收值 (這里我直接把接收到的值又回傳了,方便直接在postman查看) 問題排查 1.猜測缺少@RequeBody,實際上項目controller層包含了RestControlle

    2024年02月13日
    瀏覽(28)
  • stream(流) 獲取list里面對象的某個值的列表

    — 獲取userList里面的name值組成列表 User.java mian 結(jié)果

    2024年02月17日
    瀏覽(24)
  • Java 已知文件路徑參數(shù),用兩種方法獲取文件名
  • 小程序-獲取input值的方法

    小程序-獲取input值的方法

    微信小程序-獲取input值的方法 1、 bindinput wxml input name=\\\"text_name\\\" type=\\\'text\\\' bindinput=\\\'getValue\\\' placeholder-style=\\\'font-size:28rpx;\\\' placeholder=\\\'請輸入信息\\\'/input js 包含value值, cursor 是獲取光標(biāo)的位置。 2、 bindsubmit 當(dāng)需要提交的表單內(nèi)容過多時,選擇bindsubmit更合適 我們通過input的name字段與之

    2024年02月11日
    瀏覽(17)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包