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

相关文章
相关标签/搜索