有没有办法将2个变量组合为1个?

每次按下“兑换凭证”按钮时,我都需要重置输入值

我有以下变量:

var buttonColor = $(this).attr('class');

var goldOriginalTotal = '$3916.64';
var silverOriginalTotal = '$1396.64';
var bronzeOriginalTotal = '$724.64';
buttonColor将给我金,银或青铜。我想用它来调用goldOriginalTotal,silverOriginalTotal或铜器OriginalTotal。

我想按以下方式使用它,但我认为这是不可能的:(
$(this).find('input.' + buttonColor).text(buttonColor + OriginalTotal);

例如buttonColor + OriginalTotal应该等于goldOriginalTotal,应该打印出$3916.64

最佳答案

在这种情况下,最好将您现在拥有的三个变量作为对象的属性,并以所需的类名作为关键字。试试这个:

var buttonColor = $(this).attr('class');
var originalTotal = {
    gold: '$3916.64',
    silver: '$1396.64',
    bronze: '$724.64'
};
$(this).find('input.' + buttonColor).text(originalTotal[buttonColor]);

您当前正在尝试执行的操作buttonColor + OriginalTotal将导致字符串连接。您可以使用eval通过名称以编程方式访问变量,但是这样做是一种可怕的做法。上述方案是优选的方法。

07-25 20:40