JavaScript对象的可计算属性名

ECMAScript的对象的键往往是确定的,如果想要实现对象的键根据实际情况赋予不同的键的话,那就得用 可计算属性名 这个功能,把需要计算的表达式放在方括号[]里面。

在ECMA262-5(2009)里面的做法是:

const nameKey = "name";
const ageKey = "age";
const jobKey = "job";

let person = {};
person[nameKey] = 'Matt';
person[ageKey] = 27;
person[jobKey] = 'Software engineer';

console.log(person);
//{ name: 'Matt', age: 27, job: 'Software engineer' }

从ECMA262-6(2015)开始添加了可计算属性名这个功能,这里这样做:

const nameKey = "name";
const ageKey = "age";
const jobKey = "job";

let person = {
  [nameKey] : 'Matt',
  [ageKey] : 27,
  [jobKey] : 'Software engineer'
};

console.log(person);
//{ name: 'Matt', age: 27, job: 'Software engineer' }

原创文章,作者:huoxiaoqiang,如若转载,请注明出处:https://www.huoxiaoqiang.com/experience/jsexp/9730.html

发表评论

登录后才能评论