2013-03-31 13 views
7

デバッグしようとしている間、私はこの行で 'length'ヌルエラーが発生しています。それは指示された本のように書かれているので、なぜ私にエラーを与えているのか分からないのですか? SORRY おかげで、=)ヌル(javascript)のプロパティ 'length'を読み取れません

if (capital.length < 1) { 

(ここで要求されるように、完全なコードです。)

あなたが提供したコードから
<script type="text/javascript"> 
var capital = window.prompt("What is the capital of Missouri?","") 

if (capital.length < 1) { 
    document.getElementById("firstdiv").innerHTML="Sorry you don't feel like playing.<br /> The Capital of Missouri is Jefferson City."; 
} 
else { 
    if (!window.confirm("Is that your final answer?")){ return true; 

     document.getElementById("firstdiv").innerHTML = "The capital of Missouri is: <bold>" + capital + "</bold>, so says you."; 
    } 
    else{ 
     return false; 
    } 
} 
</script> 
+0

ポスト完全なコード – frickskit

+1

これは何語でください? JavaScript? –

+0

あなたは決して 'capital'を設定しないので。 – SLaks

答えて

23

適切なテストです:あなたは長さチェックを実行するとき

if (capital != null && capital.length < 1) { 

これは、capital常に非nullであることを保証します。

また、コメントのように、capitalnullであるため、決して初期化しないためです。

+0

とても申し訳ありません。はいJavaScriptにあります – JBSAMOM

+0

完了=)申し訳ありません – JBSAMOM

1

、あなたが言語を知りません変数capitalはnullです。プロパティの長さを読み込もうとすると、システムはnull変数を尊重しようとしています。 capitalを定義する必要があります。

2
if (capital != null && capital != undefined && capital.length < 1) { 
//capital does exists 
} 
0

私はこれを試してみました:

if(capital !== null){ 
//Capital has something 
} 
関連する問題