ES6特性總結

1、對象的擴展vue

一、ES6中作了簡化:code

傳統對象是鍵值對的集合。對象

①初始化時key和value名字相同,可簡寫ip

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

②屬性值爲方法,可省略冒號和function關鍵字(vue中的用法)get

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

二、屬性名可計算it

以前的版本,可經過[]來訪問名字爲變量的屬性,此種方法的前提是屬性變量名已知。io

ES6中屬性名是可計算的console

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' }

三、新增方法function

①比較值得方法(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' }
相關文章
相關標籤/搜索