object的一些属性的用法

object对象中一些特殊属性的应用与介绍

`



前言

本章重点介绍object对象的一些 特殊属性的应用,这些属性在高级函数比较常见,下面我总结了几个我经常见到的,
`


提示:以下是本篇文章正文内容,下面案例可供参考

一、object.defineProperty与object.defineProperties

object.defineProperty可以为对象定义属性与赋值,

Object.defineProperty(obj,'d',{
    value:3,
      configurable:false,//不能删除
      enumerable:true,//可枚举
      writable:true,
    //   value
  })

object.defineProperties可以对象的多个属性同时赋值

 Object.defineProperties(obj,{
   c:{
       writable:true,
       value:3
   },
   e:{
      get(){
          return 5;
      },
      set(){
          this.e=6;
      }
   }
  });

二、 Object.getOwnPropertyNames()与Object.getOwnPropertyDescriptor()

Object.getOwnPropertyNames()可以获取到对象的key值并且返回一个数组,可以用数组的方法foreach遍历对象的键值

//返回一个数组包含对象的键值
 Object.getOwnPropertyNames(obj).forEach(a=>console.log(a));

Object.getOwnPropertyDescriptor()可以获取对象的某个属性,并通过一个对象的形式返回出去

//返回一个对象键值描述的对象  后面加s 表示输出所有的属性对象
var b =Object.getOwnPropertyDescriptor(obj,'a');
 console.log(b);

三,object.entries(),object.keys(),object.values()的含义

console.log(Object.entries(obj))//对象的key和值
console.log(Object.keys(obj))//对象的key组成的数组
console.log(Object.values(obj));//对象的值组成的数组

总结

例如:以上就是今天要讲的内容,本文仅仅简单介绍了object的一些属性使用,
完整代码与浏览器运行结果

 <script>
        //对象的属性应用
var obj = {
    a:1,
    b:2
}
//返回一个数组包含对象的键值
 Object.getOwnPropertyNames(obj).forEach(a=>console.log(a));
//返回一个对象键值描述的对象  后面加s 表示输出所有的属性对象
var b =Object.getOwnPropertyDescriptor(obj,'a');
 console.log(b);
 //
//返回的数组形式
console.log(Object.entries(obj))//对象的key和值
console.log(Object.keys(obj))//对象的key组成的数组
console.log(Object.values(obj));//对象的值组成的数组



//定义对象的属性
Object.defineProperty(obj,'d',{
    value:3,
      configurable:false,//不能删除
      enumerable:true,//可枚举
      writable:true,
    //   value
  })
  delete obj.a;//false
//   console.log(obj);
  Object.defineProperties(obj,{
   c:{
       writable:true,
       value:3
   },
   e:{
      get(){
          return 5;
      },
      set(){
          this.e=6;
      }
   }
  });
  console.log(obj)




    </script>

在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值