美文网首页
JS 对象基本用法

JS 对象基本用法

作者: 此人长期不在线 | 来源:发表于2020-10-11 23:59 被阅读0次

    对象的定义

    对象是无序的数值集合或者键值对的集合

    声明对象的语法

    1. let object = { 'name' : 'zoe' , 'age' : 18 }
    2. let object = new Object({ 'name' : 'zoe' , 'age' : 18 })
    3. console.log({ 'name' : 'zoe' , 'age' : 18 })此为匿名对象

    其中,'name'是键名,键名只能是字符串,不是标识符,可以包含任意字符。键名的引号可以省略,省略之后只能写标识符,此时键名还是字符串。

    删除对象的属性

    语法
    • delete obj.name
    • delete obj['name']
    • obj.name=undefined令属性名的值为空,此时属性名存在,并没有删除

    如何查看对象的属性

    语法
    1. Object.keys(obj)可以得到obj的所有key
    2. Object.values(obj)可以得到obj的所有属性值
    3. Object.entries(obj)查看所有key及其值
    4. obj.nameobj['name']查看单个属性的值
    5. console.dir(obj)查看自身属性+共有属性

    如何修改或增加对象的属性

    直接赋值
    • let obj = {name: 'frank'}
    • obj.name = 'frank'
    • obj['name'] = 'frank'
    • obj['na'+'me'] = 'frank'
    • let key = 'name'; obj[key] = 'frank'此时key是变量,用变量的值作为属性名,可以把变量用[]括起来。
    批量赋值

    Object.assign(obj, {age: 18, gender: 'man'})其中obj是对象名

    修改隐藏属性
    let common = {kind: 'human'}
    let obj = Object.create(common)
    obj.name = 'frank'`
    
    image.png

    'name' in obj和obj.hasOwnProperty('name')的区别

    • 'name' in obj判断属性名是否在对象里面,不会判断是自身还是共有的
    • obj.hasOwnProperty('toString')判断一个属性是自身的还是共有的

    相关文章

      网友评论

          本文标题:JS 对象基本用法

          本文链接:https://www.haomeiwen.com/subject/chsypktx.html