美文网首页
ES6 对象的扩展

ES6 对象的扩展

作者: _花 | 来源:发表于2017-10-16 11:23 被阅读0次

1.属性的简洁标识方法

1)属性简写

var foo = ‘bar’;

var baz = {foo};

baz // {foo : foo}   不写顺序ing值,属性值等于属性名所代表的变量!

2)方法简写

{

          class(){            //简洁写法中属性名总是字符串,所以是关键字也无妨

                    return ....

          },

          data    :      function (){   

          }

}

2.属性名表达式

obj['a' + 'bc'] = 123         //ES6/ES5都可以使用

var obj = {

               'abc' :123, //ES6

               ['abc']:123 , //ES6

               abc:123 //ES6/ES5

}

注意:属性名表达式不能与简洁写法表达式同时使用

3.Object.is(a,b)用来比较两个值是否严格相等,(===,+0!= -0,NaN = NaN)

4.Object.assign()

Object.assign(target,resource1,resource2)将resource对象的所有可枚举属性全部复制到目标对象,如有同名后者覆盖前者。

应用:

为对象添加属性(这个的话,应该没必要用);

为对象添加方法

Objectassign(someClass.prototype,{

              someMethod(){

                 }

})

等价于SomeClass.prototype.someMethod= function(){..............}

克隆对象:{

function clone(origin){

          return  Object.assigmn({},origin)//只能克隆它本身的值,不能克隆他的继承值。

}

function clone(){

             let originProto = Object.getPrototypeof(origin);

             return Object.assign(Object.create(),origin)

}

5.Object.setPropotypeOf(),Object.getPrototypeof()

设置原型对象,获取原型对象

6.对象的扩展运算符

let{x,y,...z} = {x:1,y:2,a:3,b:4};

x//1

y//2

z//{ a:3,b:4 }(z属于Reset参数,reset参数不会复制继承远行对象的属性)

let z ={a:3,B:4}

z._proto_ = {c:5}

let n = {...z}

n //{a:3,B:4}只能复制自身的属性,不能复制原型上的属性

相关文章

  • 2018-08-24

    ES6对象的扩展

  • es6之扩展运算符 三个点(...)

    es6之扩展运算符 三个点(...)对象的扩展运算符数组的扩展运算符总结es6之扩展运算符 三个点(…)对象的扩展...

  • ES6扩展归纳

    ES6扩展归纳 介绍ES6相比与ES5在原有对象上的扩展,包括字符串、正则、数值、函数、数组、对象等扩展,本文是阮...

  • es6的数值,函数,字符串扩展

    一、es6的数值扩展 二、es6的函数扩展 代码效果:对象解构在函数中的应用 三、es6字符串扩展 常用方法 代码...

  • ES6新增特性(二)

    ES6 的内置对象扩展 Array 的扩展方法 一、Array 的扩展方法 1. 扩展运算符(展开语法) 扩展运算...

  • es6笔记

    es6 对象扩展方法is() 全等比较Object.is(NaN,NaN) // trueassign() 对象合...

  • 【基础知识】扩展运算符...

    变量解构使用案例 数组扩展运算符 重点:对象也可以使用...哦ES6之扩展运算符-对象

  • 对象

    对象的深拷贝 对象合并 assign() hasOwnProperty 遍历赋值 Es6,扩展运算符 Object...

  • ES6 学习(Number扩展篇)

    - Number扩展 ES6 把 parseInt() 和 parseFloat() 移植给了 Number 对象...

  • 扩展对象的功能性.md

    对象扩展 对象类别 在ES6中,对象分为下面几种叫法。 普通对象 特异对象 标准对象 内建对象 对象字面量语法拓展...

网友评论

      本文标题:ES6 对象的扩展

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