zl程序教程

您现在的位置是:首页 >  其他

当前栏目

ES6 从入门到精通 # 08:扩展的对象的功能

2023-03-14 22:58:25 时间

说明

ES6 从入门到精通系列(全23讲)学习笔记。




扩展的对象的功能


es6 直接写入变量和函数,作为对象的属性和方法。

const name = "kaimo",
    age = 313;
// es5
const person = {
    name: name,
    age: age,
    getName: function () {
        console.log(this.name)
    }
}
// es6 简写
const person = {
    name,
    age,
    getName() {
        console.log(this.name)
    }
}
person.getName()


4963baa883c9430b9cab57ff28d9c0a0.png



function fn(x, y) {
    return {x, y};
}
console.log(fn(1,2));


1275ef483e0540e3a328626bc630d9fb.png

const obj = {};
obj.isShow = true;
const name = "kaimo";
obj[name + "bc"] = 123;
obj['f'+name] = function() {
    console.log(this)
}
console.log(obj)

// 可以改成
const name = "kaimo";
const obj = {
    isShow: true,
    [name + "bc"]: 123,
    ['f'+name]() {
        console.log(this)
    }
};
console.log(obj)


625c591b649c436a91d5b72906972cb7.png


对象的方法

// is() 比较两个值严格相等
console.log(NaN === NaN);
console.log(Object.is(NaN, NaN));


96acaedfdd574ae2a9c1216856c2471e.png


// assign() 对象的合并(浅拷贝)返回合并之后的新对象
let newObj = Object.assign({}, {name: "kaimo"}, {age: 313});
console.log(newObj);



684fca52099b4ddeb695d37b98ff7b3d.png