vue data赋值问题

例如:我定义了3个变量分别是:data1,data2,data3
然后在一个函数中想根据参数来确定为其中的一个赋值,例如:当参数值为1,为data1赋值;参数为2,为data2赋值... 这种,因为可能会有很多种赋值方案,属于我想用下面这种if判断有点不太合适,又没有想到比较好的方法,还请有好方法的好心人指点下,谢谢啦

function Test(param) {    if(param===1){        this.data1 = ...
    } else if(param===2){        this.data2 = ...
    } else{        this.data3 = ...
    }
}

想达到类似上面的效果但是不用if...else判断的方法

补充:我可能没太说明白,我的意思是可能会有很多参数,变量也会有好多,有没有什么方法能实现类似下面这种的结果

function Test(param) {    this.data+param = ...  //知道这样是不行的,但是想找一种能达到这种效果的方法}

阅读 2.6k
3 个回答
this[`data${param}`] = ...
function test(param) {  
    param && this[`data${param}`] = ...; 
}

创建一个 Map,索引为 dataparam,值为你想要给 dataparam 赋的值,然后获取 param 的时候拼接变量名,去 Map 中取该变量名对应索引的值,赋值给 this.变量名

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题