首页 > 其他 > 详细

[ES6] 16. Object Enhancements

时间:2015-01-01 22:25:37      阅读:308      评论:0      收藏:0      [点我收藏+]

Define object


 

var color = "blue";
var speed = 120;

var car = {color, speed};

console.log(car.color);  // blue
console.log(car.speed);  // 120

 in ES5: 

var car = {color: color, speed: speed};

 

works with function


var color = "blue";
var speed = 120;
function go(){
    console.log("start");
}

var car = {color, speed, go};

console.log(car.color); //blue
console.log(car.speed); //120
car.go(); // start

 

define function inside object:


 

var color = "blue";
var speed = 120;

var car = {
    color,
    speed,
    go(){
        console.log("start");
    }
};

console.log(car.color); //blue
console.log(car.speed); //120
car.go(); // start

 

in ES5:

var car = {
    color,
    speed,
    go: function(){
        console.log("start");
    }
};

 

get computed property:


 

var color = "blue";
var speed = 120;

var car = {
    color,
    speed,
    ["go"]: function(){
        console.log("start");
    }
};

console.log(car.color); //blue
console.log(car.speed); //120
car.go(); // start

The same as:

car["go"](); // start

 

string concatenation or evaluation


 

var color = "blue";
var speed = 120;
var drive = "go";
var car = {
    color,
    speed,
    [drive]: function(){
        console.log("start");
    }
};

console.log(car.color); //blue
console.log(car.speed); //120
car.go(); // start
car["go"](); // start

 

[ES6] 16. Object Enhancements

原文:http://www.cnblogs.com/Answer1215/p/4197893.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!