当前位置:   article > 正文

JS对象 Object.assign()_object.assign 动态配置

object.assign 动态配置

对象字面量

JS中的对象:

JavaScript 对象是变量的内容   放置变量或函数

对象字面量是一种简单的键值对数据结构

  1. let obj = {
  2. Pcode:{a:'1'},
  3. pName: 'Apple',
  4. getData() {
  5. console.log(obj.Pcode, obj.pName);
  6. }
  7. };
  8. //添加属性
  9. // obj.Pcode=10001;
  10. // obj.pName='Apple';
  11. // obj.getData=function getData(){
  12. // console.log(obj.Pcode,obj.pName);
  13. // }
  14. console.log(obj);

JS对象ES6 声明 动态属性  []声明动态的值

  1. //设置动态属性
  2. let tValue='Pcode';
  3. //[]声明动态的值
  4. let obj = {
  5. [tValue]:{a:'1'},
  6. pName: 'Apple',
  7. getData() {
  8. console.log(obj.Pcode, obj.pName);
  9. }
  10. };
  11. console.log(obj);

 Object.defineProperty(obj,property,descriptor)

Object.defineProperty():方法会在对象上直接定义个新的属性,或者修改现有的属性,并返回此对象,

参数一:obj       绑定属性的目标对象             参数二:property             绑定的属性名
参数三:descriptor
属性描述(配置),      且此参数本身为一个对象

属性值1:value             设置属性默认值
属性值2:writable         设置属性是否能够修改
属性值3:enumerable   设置属性是否可以枚举,即是否允许遍历
属性值4:configurable   设置属性是否可以删除或编辑

//当使用get 和set 不能设置 writable 和configurable
属性值5:get                  获取属性的值 
属性值6:set                设置属性的值

 

  1. //向对象添加只读属性
  2. const pro=Object.defineProperty({},'pCode',{
  3. writable:false, //false 只读
  4. configurable:true,
  5. enumerable:false,
  6. configurable: true,
  7. value:1001,
  8. });
  9. const obj=Object.create(pro);
  10. console.log(obj)
  11. obj.pCode=1002;
  12. console.log(obj.pCode)
  13. delete obj.pCode;
  14. //使用
  15. let obj1 = { count : 0, list : [1,2,4] };
  16. let target = {};
  17. for (let key in obj1){
  18. Object.defineProperty(target,key,{
  19. value: obj1[key]
  20. })
  21. }
  22. console.log(target);

Object.assign()

 方法用于将所有可枚举属性的值从一个或多个源对象分配到目标对象。它将返回目标对象

Object.assign()方法的第一个参数是目标对象,后面的参数都是源对象

  1. //克隆对象 循环遍历 2:Object.assign
  2. let obj3 = { a: 'First' };
  3. let obj4=Object.assign({},obj1);
  4. obj4.a='Second';
  5. console.log(obj3.a);//First
声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/不正经/article/detail/68050
推荐阅读
相关标签
  

闽ICP备14008679号