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

JS 对象基本用法

作者: 浪味仙儿啊 | 来源:发表于2019-10-08 21:04 被阅读0次

一、声明对象的两种语法

  • let obj = { 'name' : 'frank' , 'age' : 18}
  • let obj = new Object ({ 'name' : 'frank'})
    两种写法都可以,只是第二种更规范
  • 细节
    键名是字符串,不是标识符,可以包含任意字符
    引号可以省略,但键名还是字符串,省略之后就只能写标识符

二、如何删除对象的属性

  • delete obj .xxx或delete obj ['xxx']
    如使用undefined,属性名还在,只是属性值为undefined

而使用delete obj.name,name及其属性值都没了

  • 'xxx' in obj 可查看xxx是不是obj的属性名
  • xxx' in obj && obj.xxx可查看属性值

三、如何查看对象的属性

  • 查看自身所有属性
    Object.keys(obj) 查看属性名

Object.values(obj)查看属性值

Object.entries(obj)查看属性名和属性值

  • 查看自身及共有属性
    console.dir(obj)
    或者自己依次用Object.keys打印出obj.__ proto__
  • 判断一个属性是自身的还是共有的
    obj.hasOwnProoerty('name')
    如是自身的则返回true,如为共有则返回false

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

修改或增加属性

  • 直接赋值
    let obj ={name:'frank'}
    obj.name='frank'
    obj['name']='frank'
    obj['na'+'me']='frank'
    let key= 'name'; obj[key] ='frank'
  • 批量赋值
    Object.assign(obj,{age:18,gender:'male'})

修改或增加共有属性
obj.__proto__.toString='xxx' 不推荐此方法
Object.prototype.toString='xxx'
一般不要修改原型,会出现很多问题

修改隐藏属性

  • 不推荐使用__ proto__
let obj ={name:'frank}
let obj2 ={name:'jack'}
let common ={kind:'human'}
obj.__proto__ =common
obj2.__proto__ =common
  • 推荐使用Object.create
let obj =Object.create(common)
obj.name ='frank'
let obj2 =Object.create(common) 
obj2.name ='jack'

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

'name' in obj 是查看name是否为obj的属性,但当使用'toString in obj' 时也返回true,所以隐藏属性无法使用此写法。
应该使用obj.hasOwnProperty('toString')查看

相关文章

  • js对象及其方法

    1.对象MDN文档2.JS基础--JS对象及其基本用法3.JavaScript 对象所有API解析

  • JS 对象基本用法

    1.声明对象的两种语法 ES6新增了两种声明对象的方法,分别是let和const。 2.如何删除对象的属性 del...

  • JS 对象基本用法

    一、声明对象的两种语法 let obj = { 'name' : 'frank' , 'age' : 18} le...

  • js对象基本用法

    1.声明对象 定义:无序的数据集合、键值对的集合 写法 属性名:每个key都是对象的属性名(property) 属...

  • JS 对象基本用法

    1 声明对象的两种语法 2 如何删除对象的属性 3 如何查看对象的属性 Object.keys(obj) 查...

  • JS 对象基本用法

    对象的定义 对象是无序的数值集合或者键值对的集合 声明对象的语法 let object = { 'name' : ...

  • JS对象基本用法

    一、声明对象的两种方法(对象:无序的数据集合&键值对的集合) ·简易声明:let obj = { 'name' :...

  • JS对象基本用法

    与JS相关的七种数据类型以及五个falsy值 七种数据类型 : number、string、bool、symbol...

  • JS对象基本用法

    声明对象的两种语法 如何删除对象属性 如何查看对象的属性 查看自身所有属性 查看自身+共有属性 判断一个属性是自身...

  • JS 对象基本用法

    6种基本数据类型 null undefined string number boolean symobl 5种fa...

网友评论

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

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