• 締切済み

JavaScriptのコードの間違いを教えて

いつもお世話になっております。 現在、JavaScriptの勉強をしているのですが、if構文のところでつまずいてしまいした。 下のコードがうまく実行できません。 間違いを指摘して頂ければと思います。 <doctype! html> <html lang="ja"> <head>    <meta charset="UTF-8">    <title>Javascript</title> </head> <body> <script type="text/javascript">    var x = window.prompt("好きな値を入力してください","100");    if (x>100)       {window.document.write("100より大きいです");}    else {if(x<100))       {window.document.write("100より小さいです");}       else {if(x=100))          {window.document.write("100です");}       }    } </script> </body> </html> なお、テキストエディタで記述し、実行はGoogleChromeで行いました。 よろしくお願いします。

みんなの回答

  • de000
  • ベストアンサー率59% (111/187)
回答No.2

ANo.1さんが仰る事 ごもっともですね。 では、ヒントだけ・・・ 1個目 else {if(x<100))  のライン 2個目 else {if(x=100))  のライン どちらも「SyntaxError」(構文エラー)です。 よ~く、目を凝らして見て下さい。

  • kmee
  • ベストアンサー率55% (1857/3366)
回答No.1

写し間違いでなければ、単純に、括弧の対応が取れていないだけでは? # 念の為に確認しますが、全角スペースは、ここに書くために入力したものですね?実際はタブや半角スペースになってますね? > 下のコードがうまく実行できません。 どう「うまく実行できない」のか、分析することが、修正への第一歩です。 自分で直すにしろ、人に聞くにしろ、説明できるようになりましょう。 > 間違いを指摘して頂ければと思います。 文法間違い等の、はっきりとした間違いは、ブラウザが指摘してくれます。 エラーメッセージを読んで理解することも、上達のコツの一つです。 ただ、標準では、エラーメッセージは表示されないようになっています。 Javascriptの勉強をするなら、これを表示されるように変更しましょう。 検索したのを貼っておきます。Google Chromeは使ってないので、バージョン違いで操作方法が違っていたら済みません http://ingwer-design.com/blog/javascript/post-5.html

関連するQ&A

  • Javascriptの質問です。

    Javascriptの質問です。 昨日からjavascriptを始めた初心者なのですが、すみませんが、以下のコードの不具合の訂正をお願いしたいのです。自分なりにあれこれやっては見ましたが、結論が見出せません。 昨日は、id="BOX" の部分を、windowをリサイズしたときに、縦横常に中央に表示させるといったものです。 問題点: (1)windowをリサイズたときに、動かない点 (2)DOCTYPE宣言すると、まったく機能しない。(DOCTYOE宣言とJAVASCRIPTの対応が理解できていないので。。とりあえず、DOCTYPE宣言無しでも機能すればいいかな?と思っております。IE8とfirefox3での表示を目指しています。) 恐れ入りますがよろしくお願いいたします。 ■HTML <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <title>無題ドキュメント</title> <link href="css/test1.css" rel="stylesheet" type="text/css" /> <script type="text/javascript"> <!-- function changeStyle(y,x) { /*変数トレース*/ document.write("関数CALL\n"); document.write(y+"/"); document.write(x); /*CSSの書き換え(CSS)を書き換えると位置をへんこうできるものと思っています。*/ document.getElementById("box").style.marginTop = y; document.getElementById("box").style.marginLeft = x; } // --> </script> <script type="text/javascript"> <!-- function relocate() { window.focus(); /*firefoxのwindowサイズとboxの大きさによりマージンを計算*/ if( 0 != window.innerHeight && window.innerHeight > 960){ y=((window.innerHeight - 960)/2); }else{y=0;} /*IEのwindowサイズとboxの大きさによりマージンを計算*/ if( 0 != window.innerWidth && window.innerHeight >1100){ x=((window.innerWidth - 1100)/2); }else{x=0;} /**/ if( 0 != document.body.clientHeight && document.body.clientHeight > 960){ y=((document.body.clientHeight - 960)/2); }else{y=0;} if(0 != document.body.clientWidth && document.body.clientWidth > 1100){ x=((document.body.clientWidth - 1100)/2); }else{x=0;} /*CSSの変更*/ changeStyle(y,x); } //--> </script> </head> <body onResize="relocate()"> <!-- イベントハンドラセット(リサイズ時にCSS変更)こちらが問題のようです。 --> <div id="box">123456</div> <!-- 目的のボックス--> <script type="text/javascript"> <!-- /*オンロード時に1度CSSを変更する。もちらは動作します。*/ relocate(); // --> </script> </body> </html> ■CSS @charset "utf-8"; /* CSS Document */ *{ margin: 0px; padding: 0px; } #box { background-color: #FF3300; height: 960px; width: 1100px; border: 100px none #999999; margin-top:0px; margin-left:0px; } よろしくお願いします。

  • javascriptに関する質問です

    <html> <head> <title>javascript BMIを求める</title> </head> <body> <h2>BMI を求める</h2> <SCRIPT TYPE="text/JavaScript"> // JavaScript var weight, height, bmi; weight = prompt("60[kg] "); height = prompt(' 175[cm] '); height = height/100; bmi = weight/(height * height); document.write('BMI は', bmi); // JavaScript </script> </body> </html> をif文かfor文を使いBMIを計算したいです、どのようにすればいいのかご教授ください

  • このソースを直して!【JavaScript】

    JavaScriptで、「画像をクリックしたらその画像を交互に大きくしたり小さくしたりする」というプログラムを書いたのですが、2回クリックしたら画像をクリックしても何も起こらなくなってしまいました。どうしたら解決するでしょうか? <html><head><title>test</title> <script type="text/javascript"><!-- x=128; y=128; function kaeru(){ document.images["gazou"].height = x; document.images["gazou"].width = y; if(x=64){x=128; y=128;} if(x=128){x=64; y=64;} } //--></script> </head><body> <a href="JavaScript:kaeru()"> <image src="co.gif" id="gazou" width="64"height="64"> </a> </body></html> 回答よろしくお願いします。 ちなみに if(x=128){x=64; y=64;} の所はelseにしようと思っていたのですが、elseにしたらそのelse文が実行されませんでした。

  • WEBページへのJavascriptの反映

    WEBページにJavascriptが反映されません。 Eclipseを使用しているのですが、httpプレビューにも反映されていません。 コードの位置に、;だけ残っていたりします。 作成は、静的WEBプロジェクトで、エンコードの設定はUTF-8にしています。 コードもおそらく間違えてはいないと思うのですが・・・ ご教授頂ければ助かります。 <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> <title>index</title> </head> <body> <script type="text/javascript"> <!-- var x 123; if (x % 2 == 0) document.write(x + "は偶数"); else document.write(x + "は奇数"); //--> </script> </body> </html>

  • JavaScriptの間違いがどこか教えてください。

    JavaScriptを勉強しはじめたばかりで、つまずいております。 時間ごとに違った言葉を表示するというJavaScriptです。 どこが間違えているのかわからないので、教えてください。 間違いはこの中にあるはずなのですが…。 <script type="text/javascript"> <!-- now = new Date(); nowhours = now.getHours(); document.write(nowhours); if (nowhours <= 3) { msg = "こんばんは"; } eles if (nowhours <= 11) { msg = "おはようございます"; } eles if (nowhours <= 16){ msg = "こんにちは"; } eles { msg = "こんばんは"; } document.write(msg); //--> </script> 正しい答えは <script type="text/javascript"> <!-- now = new Date(); nowhours = now.getHours(); document.write(nowhours); if (nowhours <= 3 ) { msg = "こんばんは"; } else if (nowhours <= 11) { msg = "おはようございます"; } else if (nowhours <= 16){ msg = "こんにちは"; } else { msg = "こんばんは"; } document.write(msg); // --> </script> なのですが、どこが違うのかまったくわかりません。

    • ベストアンサー
    • Mac
  • JavascriptからJavaへの変え方

    Javascriptで作ったものをJavaにしないといけなくなったのですが 私はJava初心者でまったくわかりません。 色々ネットで調べてみたのですが、どうも難しくて理解することができませんでした。 下にJavascriptで作ったものを載せてるのですがどなたかやり方を教えてもらえないでしょうか? <html> <head> <title>サンプル</title> <script type="text/javascript"> function jikoku() { dd = new Date(); document.F1.T1.value = dd.toLocaleString(); window.setTimeout("jikoku()", 1000); } </script> <script type="text/javascript"> mes = new Array(5); mes[0]="0"; mes[1]="1"; mes[2]="2"; mes[3]="3"; mes[4]="4"; date=(new Date()).getHours(); if( 0 <= date && date <= 5 ){ document.write(mes[0]); } else if( 6 <= date && date <= 10 ){ document.write(mes[1]); } else if( 11 <= date && date <= 16 ){ document.write(mes[2]); } else if( 17 <= date && date <= 19 ){ document.write(mes[3]); } else{ document.write(mes[4]); } </script> <script type="text/javascript"> function Random() { var kazu = Math.random(); kazu = kazu*100; kazu = Math.ceil(kazu); if( kazu<=9 ) document.write('<br/>○1<br/>'); else if( kazu<=19 ) document.write('<br/>○2<br/>'); else if( kazu<=29 ) document.write('<br/>○3<br/>'); else if( kazu<=39 ) document.write('<br/>○4<br/>'); else if( kazu<=49 ) document.write('<br/>○5<br/>'); else if( kazu<=59 ) document.write('<br/>○6<br/>'); else if( kazu<=69 ) document.write('<br/>○7<br/>'); else if( kazu<=79 ) document.write('<br/>○8<br/>'); else if( kazu<=89 ) document.write('<br/>○9<br/>'); else document.write('<br/>○10<br/>'); } Random() </script> <script language="JavaScript"> var imglist = new Array( "sample1.jpg", "sample2.jpg", "sample3.jpg", "sample4.jpg" ); var selectnum = Math.floor((Math.random() * 100)) % imglist.length; var output = "<img src=" + imglist[selectnum] + ">"; document.write(output); </script> </head> </html>

  • javascriptで困っています。教えてください

    以下のようにjavascriptの内容を書いた外部のテキストファイルを読み込んで、実行しようとしているのですが、うまくいきません。普通にjavascriptを読み込むのは分かっているのですが、このような方法ができないのでしょうか?よろしくお願いします。 <!doctype html> <head> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /> <title>無題ドキュメント</title> </head> <body> <div id="jsbox"></div> <script type="text/javascript"> var jsbox = document.getElementById("jsbox"); //非同期通信///////////////////////////////////////////// var xmlHttp; loadText(); function loadText(){ if (window.XMLHttpRequest){ xmlHttp = new XMLHttpRequest(); }else{ if (window.ActiveXObject){ xmlHttp = new ActiveXObject("Microsoft.XMLHTTP"); }else{ xmlHttp = null; } } xmlHttp.onreadystatechange = checkStatus; xmlHttp.open("GET", "http://xxxxxxxxxxxx/js_test.txt", true); xmlHttp.send(null); } function checkStatus(){ if (xmlHttp.readyState == 4 && xmlHttp.status == 200){ var str = xmlHttp.responseText;alert(str); jsbox.innerHTML = str; test_js(); } } ///////////////////////////////////////////////////////////////// </script> </body> </html> テキストファイルをhttp://xxxxxxxxxxxx/js_test.txtに置き、テキストファイルの内容が <script type="text/javascript"> function test_js(){ alert("test"); } </script>

  • Javascriptについて教えてください。

    Javascriptについて教えてください。 整数を入力してその入力した整数の約数の数を表示するプログラムを つくりたいのですがどうすればよいのでしょうか? 例えば、6と入力したらブラウザ上に約数の個数つまり、4と表示します。 また0以下の数字は整数を入力してくださいと表示されるようにしたいです。 途中までは作りました。 解説付きで教えてください。 <html> <head> <title>整数の約数の数を表示する</title> </head> <body> <p><script type="text/javascript"> <!-- var number; var i; number = prompt("整数を入力してください"); for(i = 0; i < 10;i++){ if(number <= 0) document.write("整数を入力してください。"); else if(number >= 1)

  • javascriptに関する質問です

    先ほどと同じような質問ですが質問方法を変えます <html> <head> <title>javascript BMIを求める</title> </head> <body> <h2>BMI を求める</h2> <SCRIPT TYPE="text/JavaScript"> // JavaScript var weight, height, bmi; weight = prompt("60[kg] "); height = prompt(' 175[cm] '); height = height/100; bmi = weight/(height * height); document.write('BMI は', bmi); // JavaScript </script> </body> </html> のBMIを求める関数を呼び出すようにjavascriptをBMIを求める関数を使ったプログラムにしたいのdスがどのようにしていいのか分かりませんご教授ください

  • javascriptの比較演算

    不可解な動作に困っています。 どなたかご教示ください。 <html> <body> <script type="text/javascript"> var a=8; if(10>a>0){document.writeln(a);} else {document.writeln("else");} </script> </body></html> だと、ブラウザで実行すると画面に8と表示されます。 一方 <html> <body> <script type="text/javascript"> var a=8; if(10>a>7){document.writeln(a);}else{document.writeln("else");} </script> </body></html> とすると、実行したときにelseと表示されます。 とても不可解です どうしてでしょうか。

専門家に質問してみよう