求教,Es6的对象Key值构建应用场景.

let key = 'skill';
var obj = {
    [key]: 'web' //[key] == skill
}
console.log(obj.skill);

这段代码我的理解是:

把key的值skill,作为对象的键重新赋值为web,从而可以在obj对象中拿到obj.skill的值
可是我想不到,在什么情况下可以使用这个情景

请大佬帮忙列举一些应用场景,感谢

阅读 1.9k
2 个回答

图片描述

我的理解场景:我在vue,绑定动态数据时,动态添加选项卡时,比如从后台获取绩效tab生成新的对象,并且循坏在动态key对象中,插入数据数据

let keyArr =["rank","behavior"]
let obj ={}
keyArr.map((item,index)=>{
    console.log(item)
    obj[item]={
        index:index
    }
})
console.log(obj)

比如在使用mxgraph的时候,经常会出现以下代码

clipboard.png

或者使用Symbol作为key的时候,

const nameSymbol = Symbol('name')
const person = {
    [nameSymbol]: '鸿则'
};