ES6特征总结

一、对象的扩大

1、ES6中做了简化:

传统对象是键值对的鸠合。

①初始化时key和value名字雷同,可简写

function createPerson(name, age){
    retrun {
        name,
        age
    }
}

②属性值为要领,可省略冒号和function关键字(vue中的用法)

methods:{
    getName(){
        console.log('name')
    },
    getAge(){
        console.log('age')
    }
}

2、属性名可计算

之前的版本,可通过[]来访问名字为变量的属性,此种要领的条件是属性变量名已知。

ES6中属性名是可计算的

let obj = {},
    originArr=[{ name: "jack", age: "19"}, { name: "tom", age: "20"}];
for(let i=0;i<originArr.length; i++){
    obj['first-' + originArr[i].name] =   originArr[i].age 
}
console.log(obj)//{ 'first-jack': '19', 'first-tom': '20' }

3、新增要领

①比较值得要领(Object.is())

剖断NaN和NaN相称:Object.is(NaN, NaN) //true
剖断+0和-0不等:Object.is(+0, -0) //false(+0和-0在JavaScript引擎中是两个完整差别的实体)

②对象的夹杂(Object.assign())

let objA = { name: 'kit', age: '21'},
    objB = { sex: 'meal', height: '180'};
Object.assign(objA, objB);
console.log(objA) //{ name: 'kit', age: '21', sex: 'meal', height: '180' }
console.log(objB) //{ sex: 'meal', height: '180' }
    原文作者:Fardwn
    原文地址: https://segmentfault.com/a/1190000018676974
    本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系博主进行删除。
点赞