2015-11-02 162 views
-3

我在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:文本没有定义

+0

想知道switch语句有什么问题吗? ! –

+0

OP应该可以像'var textArray = [“text1”,“text2”] ...一样做一个数组,并且只需为此分配代码。 'var text = textArray [code];' – Carlos2W

回答

1

您还没有定义text以外的conditionCode范围,所以它不存在并且编译器会抱怨。

var在当前函数的范围内声明一个变量。


旁白:

  • 不要重新声明函数内的变量。在顶部,不要每次给变量赋值。
  • 请勿使用没有基数参数的parseIntparseInt(foo, 10)十进制值),否则您可能会收到意外的结果。
+0

意味着更改为var? –

+0

你应该删除conditioncode函数中的所有if语句中的每个var – Carlos2W

相关问题