JavaScript數據類型-對象

js(學習筆記) ---- 九層之臺,起於累土javascript

如何建立一個對象

// 定義一個對象時 瀏覽器就會分配一塊內存

   // 屬性名:屬性值 key: value(鍵名/值) 鍵值對

   // 對象裏存儲的內容都是 鍵值對形式的 id: 100
   // 多個屬性之間 用逗號隔開

   var obj = {

       id: 100,

       num: '1',

       title: '值',

       id: 200

   }

   // 屬性名不能有重複 若是有重複的 後面會將前面的覆蓋掉

   console.log(obj.id) // 100

   console.log(typeof obj) // "object"
複製代碼

對象中的操做(增刪改查)

查詢

// 從對象中獲取某個屬性 對應的屬性值 兩種方式
    // 對象.屬性名
    // 對象['屬性名']

    var info = {
       name: 'zzy',
       age: 10,
       height: '100px'
    }
    // console.log(info)

    // 獲取對象裏某一個屬性
    // 1. 對象.屬性名(打點方式)
    console.log(info.height) // '100px'
    console.log(info.name) // 'zzy'

    // 2. 對象['屬性名']
    console.log(info['height']) // '100px'
    console.log(info['age']) // '10'

    // 注意:獲取一個不存在的屬性 返回的是 undefined(未定義 未賦值)
    console.log(info.text) // undefined

    // 建立了一個變量 但沒有賦值 它返回的是默認值 undefined
    var c
    console.log(c)
複製代碼

注意: 第二種方式 中括號裏面的屬性名須要 加 引號java

加引號緣由:
中括號裏面不加引號 會把這個屬性名 當作是一個變量來解析瀏覽器

var o = { 'sex': '女' }

    // console.log(o['sex']) // '女'

    var n = 'sex'
    // js將n當作變量來解析 把所表明的值 放在這兒 讓咱們用
    // console.log(o[n])
    // console.log(o['sex'])
複製代碼

增長

var con = { id: 100 }
    // 給對象增長一個屬性
    console.log('增長前', con) // {id: 100}

    con.title = '北京'
    con['age'] = 2019

    console.log('增長後', con) // {id: 100, title: "北京", age: 2019}
複製代碼

修改

跟增長差很少
若是對象裏沒有這個屬性 再進行賦值 就是增長
若是對象裏有這個屬性 再進行賦值 就是修改學習

var con = { id: 100 }
    console.log('修改前', con); // {id: 100}

    con.id = 2019
    // con['id'] = 2020

    console.log('修改後', con) // {id: 2020}
複製代碼

刪除

真刪除ui

var num = { 
  a: 10, 
  b: 20,
  c: 30
}

// 真刪除 
// delete 操做符
console.log('刪除前', num) // {a: 10, b: 20, c: 30}
delete num.b
console.log('刪除後', num) // {a: 10, c: 30}

複製代碼

假刪除spa

var num = {
 a: 10,
 b: 20,
 c: 30
}

// 假刪除 (屬性還存在 只是屬性值 被賦值爲 null)

num.b = null

console.log(num) // {a: 10, b: null, c: 30}
複製代碼

循環遍歷對象

var obj = {
    id: 1,
    num: '100'
  }

  // for in 遍歷對象 
  for (var k in obj) {
    console.log(k, obj[k]) // k => 屬性名 obj[k] => 屬性值
  }
複製代碼

----------------------------------------------------------------------------------------------------------------
參考文章&&強烈推薦:布羅利code

相關文章
相關標籤/搜索