大部分来说 用js声明一个对象直接量可以用以下方式
let obj = {
name : 'john'
};
但是如果key
是一个变量怎么办?
用以下方式
let parameter = 'namevar';
let obj = {
[parameter] : 'john'
//parameter : 'john' 这种 parameter是无法解析到值的 js会当做key的名字就叫parameter
};
ECMAScript 2015 的新标记
// Shorthand property names (ES2015)
var a = 'foo', b = 42, c = {};
var o = {a, b, c};
// Shorthand method names (ES2015)
var o = {
property([parameters]) {}
};
// Computed property names (ES2015)
var prop = 'foo';
var o = {
[prop]: 'hey',
['b' + 'ar']: 'there'
};
引用自 mozilla https://developer.mozilla.org/zh-CN/docs/Web/JavaScript/Reference/Operators/Object_initializer