js对象的健,如何根据变量值来指定

代码如下:


var setInfo = {};

if(xxx){

    var a = 'qa';

}else{

    var a = 'local';

}


setInfo.a = 'xxxx';

我期望得到的结果 setInfo.local = 'xxxxx' 或者 setInfo.qa= 'xxxxx' .


但是实际结果却为 setInfo.a = 'xxxx' .


如何做才能使这个 a 按变量解析。


分隔 重新整理下思路


先定义一个变量:


var environment = ['qa','local','prod'];

期望得到这样格式的数据:


var data = {

    local:{},

    qa:{},

    prod:{}

}

在一个循环中写如下赋值代码:


//setInfo 为在循环中获得数据

data = {environment[1]:setInfo}

或者


data.environment[1] = setInfo

这两段代码都会报错。。。。。


繁花不似锦
浏览 597回答 2
2回答

慕容森

segInfo[a]第一种写法:data = {  [environment[1]]: 'setInfo'}第二种写法:data[environment[1]] = 'setInfo'

哈士奇WWW

你可以先添加属性local,然后将a的属性值赋值给local,然后用delete删除属性a
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

JavaScript