变量数据错误

Wrong variable data

本文关键字:错误 数据 变量      更新时间:2023-09-26

新年快乐!

这是我的代码:

var totalwin,pradinisStatymas
function Increase()
{
    ....
    ....
    totalwin += pradinisStatymas; //I'm adding increasing totalwin by pradinisStatymas
    return print();
}

function print()
{
    locale[lang][7] = "Total win: ";
    var a="<br>"+locale[lang][7]+totalwin+"<br>";
    bot_debug(a,0);
}
$bCons = $("#botConsole");
function bot_debug(text,type)
{
    switch(type)
    {
        case 0:{$bCons.css("color","#353535"); $bCons.html(text); break;}
        case 1:{$bCons.css("color","#C12E2A"); $bCons.html(text); break;}
        case 2:{$bCons.css("color","#419641"); $bCons.html(text); break;}
    }
}

问题是,如果我将"pradinisStatymas"设置为5,它应该将$bCons的文本更改为"总胜利:5",但它将文本更改为"总胜:05"。

如果我进一步增加它,它将在"总胜利:055"结尾继续添加pradinisStatymas值。

当我使用javascript控制台而不是html文本时,它运行得很好。我想我需要做一些格式化,但我不确定怎么做。谢谢你的帮助。

您忽略了重要的一点,即如何/在哪里获得pradinisStatymas,但症状使问题变得相当清楚:pradinisStatymas中的值是字符串。(也许你是从input元素的value中得到的。)所以+=是字符串串联,而不是加法。

如果我们假设totalwin最初设置为0(因此是一个开始的数字),则将pradinisStatymas转换为+=之前的数字,例如:

totalwin += +pradinisStatymas;
// or
totalwin += Number(pradinisStatymas);
// or (if it's meant to be an integer)
totalwin += parseInt(pradinisStatymas, 10);
// or
totalwin += parseFloat(pradinisStatymas);

这些是您的一些选项,第三个选项假设它是一个整数(整数)。我在这里的回答详细介绍了各种选择。