parseInt(code)Uncaught ReferenceError:text is not defined
问题描述:
我在jquery天气中添加了一些代码来将条件天气文本转换为另一个lang。我想调用parseInt函数(代码)天气情况的文字翻译,但有错误parseInt(code)Uncaught ReferenceError:text is not defined
代码:这里
function conditionCode(code) {
var code = parseInt(code);
var text = '';
if (code == 0) { var text = 'مع ' + em("tornado"); }
if (code == 1) { var text = 'مع ' + em("العاصÙØ© الاستوائية"); }
if (code == 2) { var text = 'مع ' + em("إعصار "); }
if (code == 3) { var text = 'مع ' + em("عواص٠الرعدية الشديدة"); }
if (code == 4) { var text = 'مع ' + em("عواص٠الرعدية"); }
if (code == 5) { var text = 'مع بعض ' + em("امطار") + ' و ' + em("ثلج") + ' نزول'; }
if (code == 6) { var text = 'ممع بعض ' + em("امطار") + ' و ' + em("مطر متجمد") + ' نزول'; }
if (code == 7) { var text = 'with a mix of ' + em("snow") + ' and ' + em("sleet") + ' in the area'; }
if (code == 8) { var text = 'مع بعض ' + em("رذاذ كثيÙ"); }
if (code == 9) { var text = 'مع ' + em("رذاذ") + ' نزول'; }
if (code == 10) { var text = 'مع ' + em("Øبات البرد") + ' نزول'; }
if (code == 11 || code == 12) { var text = 'مع ' + em("امطار Ø®ÙÙŠÙØ©"); }
if (code == 13) { var text = 'مع بعض' + em("هبات") + ' نزول'; }
if (code == 14) { var text = 'مع بعض ' + em("ثلوج Ø®ÙÙŠÙØ©"); }
if (code == 15) { var text = 'مع بعض الهبوب ' + em("هبوب ثلوج"); }
if (code == 16) { var text = 'مع بعض ' + em("ثلج") + ' نزول'; }
if (code == 17) { var text = 'مع ' + em("hail") + ' نزول'; }
if (code == 18) { var text = 'مع ' + em("sleet") + ' نزول'; }
if (code == 19) { var text = 'مع ' + em("مغبرة") + ' اوضاع'; }
if (code == 20) { var text = 'و ' + em("ضباب"); }
if (code == 21) { var text = 'و ' + em("ضبابي"); }
if (code == 22) { var text = 'مع ' + em("دخان ÙÙŠ سماء"); }
if (code == 23) { var text = 'و ' + em("متهيج"); }
if (code == 26) { var text = 'و ' + em("غائم"); }
if (code == 27 || code == 28) { var text = 'و ' + em("غالباً غائم"); }
if (code == 29 || code == 30 || code == 44) { var text = 'و ' + em("غائم جزئيا"); }
if (code == 31) { var text = 'مع ' + em("سماء صاÙية"); }
if (code == 32) { var text = 'و ' + em("مشمس"); }
if (code == 33 || code == 34) { var text = 'مع ' + em("طقس معتدل"); }
if (code == 35) { var text = 'مع مزيج من ' + em("الامطار") + ' و ' + em("وابل"); }
if (code == 37) { var text = 'مع بعض ' + em("عواص٠رعدية شديدs"); }
if (code == 38 || code == 39) { var text = 'مع ' + em("عواص٠رعدية متÙرقة"); }
if (code == 40) { var text = 'مع بعض ' + em("زخات متÙرقة"); }
if (code == 41 || code == 43) { var text = 'مع ' + em("الثلوج الكثيÙØ©") + ' هبوط'; }
if (code == 42) { var text = 'مع ' + em("ثلوج كثيÙ") + ' هبوط'; }
if (code == 45) { var text = 'مع ' + em("امطار") + ' و ' + em("بروق"); }
if (code == 46) { var text = 'مع ' + em("ثلوج Ø®ÙÙŠÙ") + ' نزول'; }
if (code == 47) { var text = 'مع بعض ' + em("عواص٠رعدية شديدة"); }
if (text == '') {
var text = ' </h1>';
} else {
// Add spaces before and after text
var text = ' ' + text + ' ';
}
return text;
}
,并有错误
html += '<div class="weatherDesc">'+ feed.item.condition.text +' ' + text + '</div>';
有错误ncaught的ReferenceError:文本没有定义
答
您还没有定义text
以外的conditionCode
范围,所以它不存在并且编译器会抱怨。
var
在当前函数的范围内声明一个变量。
旁白:
- 不要重新声明函数内的变量。在顶部,不要每次给变量赋值。
- 请勿使用没有基数参数的
parseInt
(parseInt(foo, 10)
十进制值),否则您可能会收到意外的结果。
+0
意味着更改为var? –
+0
你应该删除conditioncode函数中的所有if语句中的每个var – Carlos2W
想知道switch语句有什么问题吗? ! –
OP应该可以像'var textArray = [“text1”,“text2”] ...一样做一个数组,并且只需为此分配代码。 'var text = textArray [code];' – Carlos2W