美文网首页
es6-对象扩展

es6-对象扩展

作者: 王童孟 | 来源:发表于2018-09-18 09:49 被阅读0次

函数新增特性

  • 简洁表示法
  • 属性表达式
  • 扩展运算符
  • Object新增方法

简介表示法

属性简写

{
  // 简洁表示法
  let o=1;
  let k=2;
  let es5={
    o:o, 
    k:k
  };
  let es6={
    o, // 属性简写
    k
  };
  console.log(es5,es6); // {o: 1, k: 2} {o: 1, k: 2}
}

方法简写

{
 let es5_method={
    hello:function(){
      console.log('hello');
    }
  };
  let es6_method={
    hello(){ // 方法简写
      console.log('hello');
    }
  };
  console.log(es5_method.hello(),es6_method.hello()); // hello hello
}

属性表达式

{
  let a='b';
  let es5_obj={
    a:'c',
    b:'c'
  };

  let es6_obj={
    [a]:'c' // key 值,可以是表达式或变量
  }

  console.log(es5_obj,es6_obj); // {a: "c", b: "c"} {b: "c"}

}

扩展运算符

babel 支持不友好,暂时没法用

{
  let {a,b,...c}={a:'test',b:'kill',c:'ddd',d:'ccc'};
  c={ // c 的解析结果
    c:'ddd',
    d:'ccc'
  }
}

Object新增方法

判断是否相等

Object.is() 与 === 一样

{
  console.log('字符串',Object.is('abc','abc'),'abc'==='abc'); // true true, 
  console.log('数组',Object.is([],[]),[]===[]); // false false,引用地址不同
}

拷贝

Object.assign(target, ...sources),对象拷贝

注意

  • 拷贝属性有限制,浅拷贝
  • 拷贝的只有自身对象的属性,不拷贝不可枚举的属性
{
  console.log('拷贝',Object.assign({a:'a'},{b:'b'})); // {a: "a", b: "b"}
}

遍历

Object.entries() 配合遍历使用

{
  // Object.entries() 配合遍历使用
  let test={k:123,o:456};
  for(let [key,value] of Object.entries(test)){
    console.log([key,value]); // ["k", 123] ["o", 456]
  }
}

相关文章

  • es6-对象扩展

    函数新增特性 简洁表示法 属性表达式 扩展运算符 Object新增方法 简介表示法 属性简写 方法简写 属性表达式...

  • ES6-对象的扩展

    对象的传统表示法 我们回顾一下,对象的传统表示法: 上面的案例很简单,变量person就是一个对象,对象含有nam...

  • ES6-对象的扩展

    对象是object是js最重要的数据解构; 1:属性的简洁表示方法; 上面代码中;ES6允许在对象中,直接写变量;...

  • ES6-对象字面量的扩展

  • ES6-对象字面量语法扩展

    对象字面量(Object Literals)是js中创建对象的一种方法,在ES6中通过如下语法,让对象字面量变得更...

  • ES6-扩展运算符、set、对象方法扩展

    数组合并 数组克隆 将伪数组转化为真正的数组 set set添加 add删除 delete清空 clear 数组...

  • 2019-01-24

    ES6-之 filter

  • 前端学习之ES6-对象的扩展笔记

    属性的简洁表示法 var birth = '2000/01/01'; ps: CommonJS API定义很多普通...

  • es6-数组扩展

    数组新增特性 Array.from Array.of copyWithin find\findIndex fill...

  • es6-函数扩展

    函数新增特性 参数默认值 rest参数 扩展运算符 箭头函数 this绑定 尾调用 参数默认值 注意:默认值后面必...

网友评论

      本文标题:es6-对象扩展

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