我正在使用JavaScript代码来获取要显示的正确图像的字符串但不起作用,我在las控制台日志中找到一个空字符串。
function jsmBatteryLevelIMG(lvl)
{
var icono ="";
console.log(lvl);
if(lvl < 3.60) {
icono= "/track/images/Batt000.png";
console.log("000");
}
else if(lvl <= 3.60) {
console.log("025");
icono= "/track/images/Batt025.png";
}
console.log(icono); //<---Empty string ???
return icono;
};
但如果我这样做
function jsmBatteryLevelIMG(lvl)
{
var icono ="";
console.log(lvl);
icono= "/track/images/Batt025.png";
console.log(icono); //<---Not empty string ???
return icono;
};
它运作正常。
我缺少什么?
修改
我试过这段代码
function jsmBatteryLevelIMG(lvl)
{
var icono ="";
console.log(lvl);
if(lvl < 3.60) {
icono= "/images/Batt000.png";
console.log("001");
}
else {
console.log("026");
icono= "/images/Batt025.png";
}
console.log(icono);
return icono;
};
现在我在变量icono中得到一个值但是没有像我之前写的第二个代码那样工作。
答案 0 :(得分:1)
请记住,Javascript是一种区分大小写的语言。
您对Icono
和icono
的引用不等效。
您已更新源代码以更改此内容,因此现在显而易见的是,在第二个示例中,icono现在反映了在console.log()调用之前给出的直接赋值。
在第一个示例中,如果lvl> 3.60。
,icono可能为空白答案 1 :(得分:0)
这是lvl
的价值?您的代码仅处理3.6及更低版本,因此icono
未设置值if (lvl > 3.6)
。你可能意味着:
function jsmBatteryLevelIMG(lvl)
{
var icono = "";
if(lvl < 3.60) {
icono = "/track/images/Batt000.png";
}
else if(lvl <= 7.20) {
icono = "/track/images/Batt025.png";
}
else if(level <= 10.8) {
icono = "/track/images/Batt075.png";
}
else {
icono = "/track/images/Batt100.png"
}
return icono;
};