js对象优化:分离键值对,复制对象,对象声明内部方法简化,拷贝对象,合并对象

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
</head>
<body>
    <script>
        const person={
            name:"zhang",
            age:19,
            language:["java","c","html"]
        }
        //1.把对象里面的键全部取出来
        console.log(Object.keys(person));
        //把对象里面的值全部取出来
        console.log(Object.values(person));
        //把对象键值对全部取出来
        console.log(Object.entries(person));

        
        //2.Object,assign()方法,把后面所有的都复制到第一个里面
        const target={a:1};
        const target1={b:2,d:4};
        const target2={c:3};
        Object.assign(target,target1,target2);
        console.log(target);

        //3.声明对象简写:如果属性名和属性值一样,则可以不写属性名
        const age=23;
        const name="www";
        const person3={age:age,name:name};
        //上面那一行代码相当于下面这一行:
        const person4={age,name};
        console.log(person3,person4)


        //4.对象的函数简写
        let person5={
            name:"jack",
            //第一种写法
            eat:function(food){
                console.log(this.name+"吃"+food)
            },
            //第二种写法
            //注意这种写法引用属性的时候不能使用this.name,可以使用person5.name
            eat1:food=>console.log(person5.name+"吃"+food),
            //第三种写法
            eat2(food){
                console.log(this.name+"吃"+food)
            }
        }
        person5.eat("苹果")
        person5.eat1("橘子")
        person5.eat2("香蕉")
        
        //5.拷贝对象(深拷贝)

        let person6={name:"amy",age:12}
        let person7={...person6}
        console.log(person7)

        //6.合并对象

        let age2={age:13}
        let name2={name:"Amy"}
        let person8={...age2,...name2}
        console.log(person8)


    </script>
</body>
</html>

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值