例如:我定义了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 = ... //知道这样是不行的,但是想找一种能达到这种效果的方法}
1 回答
慕斯709654
TA贡献1840条经验 获得超5个赞
能尽量少写if else
和switch
就尽量少写。推荐看看@守候 这篇文章:【浅析】特定场景下取代if-else和switch的方案,另外推荐书籍JavaScript设计模式与开发实践
var obj = { a1: '', a2: '', a3: '', }var param = 1; // 或者2,3obj['a' + param] = 0;
添加回答
举报
0/150
提交
取消