ES6学习——新的语法:对象字面量扩展(Object Literal Extensions)

73 篇文章 23 订阅

对象字面量大家应该都熟悉,就是两个大括号({}),ES6中对对象字面量增加了几个实用的新语法,大大增加了它的易用性。

1)精简属性:

var x = 2, y = 3,o = {x,y};
console.log(o)//Object { x: 2, y: 3 }

2)精简方法:

let obj = {
    conciseMethod(x, y) {
        console.log(x,y)
    },
    commonMethod:function(x,y){
        console.log(x,y)
    }
};

obj.myMethod(1,2)//1 2

3)最重要的一点,计算属性,前面的文章中我们提过:

let propKey = 'foo';
let obj = {//ES6
    [propKey]: true,
    ['b'+'ar']: 123
};

//ES6之前只能这样写:
obj[propKey + "1"] = false;
obj['f'+'oo2'] = 456;

console.log(obj);//Object { foo: true, bar: 123 }

ES6之前要想用变量当作对象的属性名称,必须先声明一个字面量,然后在用中括号语法赋值,ES6中直接可以在声明的时候就使用中括号语法来使用变量。


对象的方法一样可以使用这样写法:

let obj = {
    ['h'+'ello']() {
        return 'hi';
     }
};
console.log(obj.hello()); // hi

*以上全部代码在Firefox 43下通过测试



评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值