2015-11-02 163 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

相關問題