我不知道如何在JS中使用动态变量。我有一个滚动条列表,一些余额关联,我想在我的循环中动态显示每个‘平衡贴纸’。但是它似乎根本没有使用我添加到变量中的append?
var ticker = [CURRENCY1,CURRENCY2,CURRENCY3];
var balancesCURRENCY1 = 20;
var balancesCURRENCY2 = 30;
var balancesCURRENCY3 = 40;
for (var tick in ticker) {
if (('balances'+ticker[tick]) != 0) {
console.log(true);
}
}发布于 2018-08-20 12:09:13
要使用动态变量,请将variableNames保留在对象中,无论何时动态创建变量名称,都要引用该对象以获取变量的值。
var ticker = ['CURRENCY1','CURRENCY2','CURRENCY3'];
var allBalances = {
balancesCURRENCY1 : 20,
balancesCURRENCY2 : 30,
balancesCURRENCY3 : 40
}
for (var tick in ticker) {
if (allBalances['balances'+ticker[tick]] != 0) {
console.log(true);
}
}
发布于 2018-08-20 12:10:09
首先,您必须在数组中引用名称:[CURRENCY1,CURRENCY2,CURRENCY3],否则它们将被作为变量处理。
然后,您可以从this访问您的动态名称,请参阅以下代码片段:
var ticker = ['CURRENCY1', 'CURRENCY2', 'CURRENCY3'];
var balancesCURRENCY1 = 20;
var balancesCURRENCY2 = 30;
var balancesCURRENCY3 = 40;
for (var tick in ticker) {
if (this['balances'+ticker[tick]] != 0) {
console.log(
ticker[tick],
'balances'+ticker[tick] + ' = ' + this['balances'+ticker[tick]],
true
);
}
}
发布于 2018-08-20 12:07:45
维护2个并行数组会更干净
var ticker = ['CURRENCY1','CURRENCY2','CURRENCY3'];
var balances = [20, 30, 40];或对象数组:
var tickerInfo = [
{currency: 'CURRENCY1', balance: 20},
{currency: 'CURRENCY2', balance: 30},
{currency: 'CURRENCY3', balance: 40},
];https://stackoverflow.com/questions/51923992
复制相似问题