JavaScriptの件

このQ&Aのポイント
  • JavaScriptの本を購入し、html&cssを勉強中の超初心者がJavaScriptのコードを入力した結果、ページでエラーが発生してしまう問題について質問しています。
  • 質問者はDateオブジェクトを使用した現在の日時を表示するJavaScriptのコードを作成していますが、エラーが発生してしまいます。
  • 具体的なエラーメッセージや問題箇所を特定することができず、助けを求めています。
回答を見る
  • ベストアンサー

JavaScriptの件

html&cssを勉強中の超初心者です。この度JavaScriptの本を購入し下記のソースを入力しましたが、「ページでエラーが発生しました。」と出てしまいます。どなたかどこが間違えているのか教えて頂けませんか?よろしくお願い致します。 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <html> <head> <title>Dateオブジェクト</title> <meta http-equiv="Content-Type" content="text/html; charset=Shift_JIS"> <SCRIPT language="JavaScript"> <!-- var youbi= new Array(7); youbi [0] = "(日曜日) "; youbi [1] = "(月曜日) "; youbi [2] = "(火曜日) "; youbi [3] = "(水曜日) "; youbi [4] = "(木曜日) "; youbi [5] = "(金曜日) "; youbi [6] = "(土曜日) "; function NowTime(){ var now = new Date(); var yy = new.getFullYear(); var mm = new.getMonth(); var dd = new.getDate(); var wd = new.getDay(); var h = new.getHours(); var m = new.getMinutes(); var s = new.getSeconds(); var TSUKIHI = yy + "年" + (mm+1) + "月" + dd + "日"; var JIKOKU = h + "時" + m + "分" + s + "秒"; alert(TSUKIHI + youbi[wd] + JIKOKU + "です"); } //--> </script> </head> <body> <h1>現在の日時</h1> ※ボタンをクイックすると、現在の日時が表示されます。<br> <br> <BUTTON onClick="NowTime()">現在の日時を表示</BUTTON> </body> </html>

質問者が選んだベストアンサー

  • ベストアンサー
回答No.1

多数の記述ミスがありました。 1. var now = new Date(); var yy = new.getFullYear(); var mm = new.getMonth(); var dd = new.getDate(); var wd = new.getDay(); var h = new.getHours(); var m = new.getMinutes(); var s = new.getSeconds(); ここに書かれている「new」は、「now」が正解です。 var now = new Date(); ここで作った変数「now」を使います。 ちなみに、「new」の方はDateの初期設定をするという意味です。 2. var TSUKIHI = yy + "年" + (mm+1) + "月" + dd + "日"; var JIKOKU = h + "時" + m + "分" + s + "秒"; alert(TSUKIHI + youbi[wd] + JIKOKU + "です"); ここに多数の全角文字がありました。 全角スペースを半角スペースに変更してください。 全角+を半角+に変更してください。 以上を修正すると、エラーが無くなり動作するようになります。 3. youbi [0] = "(日曜日) "; youbi [1] = "(月曜日) "; youbi [2] = "(火曜日) "; youbi [3] = "(水曜日) "; youbi [4] = "(木曜日) "; youbi [5] = "(金曜日) "; youbi [6] = "(土曜日) "; また、ちょっとしたことなのですが、 変数と配列の間のスペースは無い方が良いです。 あっても動作はしましたが…… 以上を修正すると直ります。

feetoh
質問者

お礼

sara_seiji様 ご指示の通り入力しましたところうまく表示されました。購入した本には小文字、大文字の指示がなくnowもnewになっていました。本当に有難うございました。これで安心して前に進めます。

関連するQ&A

  • JavaScriptの件

    初心者用JavaScriptの本で下記のソースを本の通り打ち込んだと思うのですが、何度打ちなおしても「ページにエラーが発生しました」が出てしまいます。どなたかどこが間違っているのか教えて下さい。よろしくお願いします。 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <html> <head> <title>関数の練習</title> <meta http-equiv="Content-Type" content="text/html; charset=Shift_JIS"> <SCRIPT language="JavaScript"> <!-- function kotae(){ var yama="富士山"; alert(yama); } //--> </script> </head> <body> <h3>問題</h3> 日本で一番高い山は? <BUTTON onClick="kotae()">答えを見る</BOTTON> </body> </html>

  • 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に詳しい方へ。

    はじめまして。twitterのつぶやきをブログへ貼り付ける方法をお聞きしたく、質問させていただきます。 Twitterの正規のブログパーツではたまに表示されないことがあるので、googleの提供する、Ajax feed というRSSを試して、成功したのですが文章が、 「kobayashitakuya: おはよう。」 「kobayashitakuya: おやすみ。」 のように、ひとつひとつのつぶやきに「@kobayashitakuya」というTwitterIDまで表示されてしまいます。 これを非表示にする方法をご教授してくださった方がいらしたら、とても助かります。 どなたか時間があればご教授してください。 ちなみにソースは以下のとおりです。 google.load("feeds", "1"); google.setOnLoadCallback(function() { var feed = new google.feeds.Feed("http://twitter.com/statuses/user_timeline/162644645.rss"); feed.setNumEntries(15); //表示つぶやき数 feed.load(function(result) { if (!result.error) { var html = ""; html += "<div class='newslist'>"; html += "<dl>"; for (var i = 0; i < result.feed.entries.length; i++) { var entry = result.feed.entries[i]; var dd = new Date(entry.publishedDate); // now var date = (dd.getMonth() + 1) + "月" + dd.getDate() + "日&nbsp;" + dd.getHours() + ":" + dd.getMinutes(); var content = entry.content; var contentSnippet = entry.contentSnippet; html += "<dt>" + date + "</dt>"; html += "<dd>"; html += "<a class='title' target='_blank' href='" + entry.contentSnippet + "'>" + result.feed.entries[i].title + "</a>"; html += "</dd>"; } html += "<dl>"; html += "</div>"; $("#kobayashi").html(html); } }); }); これで、 <div id="kobayashi"></div> と入力すると、つぶやきが表示されます。 「おはよう。」とつぶやくと、 「kobayashitakuya: おはよう」 と表示されます。 参考までに宜しくお願いします。

  • javascript ワークブック 問題

    <HTML> <HEAD> <TITLE>繰り返し処理</TITLE> <META http-equiv="Content-Type" content="text/html; charset=Shift_JIS"> <SCRIPT type="text/javascript"> <!-- function goukei(){ var kai = 0; var bunbo = 2; var a; for (i=1 ; i<=10 ; i++){ a = 1 / bunbo; kai = kai + a; bunbo = bunbo * 2; } alert("合計は" + kai+ "です"); } //--> </SCRIPT> </HEAD> <BODY> <H3>偶数の合計</H3> 以下のボタンをクリックすると、<BR> 1/(2のn乗)を合計した結果を表示できます。<BR> <BUTTON onclick="goukei()">計算結果</BUTTON> </BODY> </HTML> <!-- function goukei(){ var kai = 0; var bunbo = 2; var a; for (i=1 ; i<=10 ; i++){ a = 1 / bunbo; kai = kai + a; bunbo = bunbo * 2; } alert("合計は" + kai+ "です"); } //--> 学び始めたばかりで、初歩的な質問で申し訳ないのですが、 for (i=1 ; i<=10 ; i++){ 以下は、変数iを使っていないのに、どうしてiが使われているのでしょうか? 1/(2のn乗)を合計した結果を表示する問題です。2の1乗から2の10乗までです。 よく分かりません。回答お願いします。説教は不要です。

  • PHPでPCのローカル時刻は取得出来ますでしょうか?

    PHPでPCのローカル時刻は取得出来ますでしょうか? 現在、javascriptで取得しているのですが、これを PHPの変数として取得出来ないか考えております。 javascriptでは下記のように取得して表示させています。 <script type="text/javascript"> var nowtime = new Date(); var hour = nowtime.getHours(); var minute = nowtime.getMinutes(); var second = nowtime.getSeconds(); if(hour < 10) { hour = "0" + hour; } if(minute < 10) { minute = "0" + minute; } if(second < 10) { second = "0" + second; } document.write(hour,minute,second); </script> 例えば現在が12時34分56秒だとしたら、javascriptで 「123456」という6ケタの数字を取得出来ます。 この「123456」を、PHPの変数として使いたいです。 ($jikoku = 123456) どなたかお知恵を拝借出来ませんでしょうか? 何卒宜しくお願い致します。

    • ベストアンサー
    • PHP
  • javascript初心者です。

    javascript初心者です。 下記のソースコードで、単純に、マウスホーバーで、テキストの内容を切り替えるものですが、 IE8ですと動作しますが、Firefox3.5だと動作しません。 なにか、原因あるのでしょうか。 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" content="text/html; charset=shift_jis" /> <title>無題ドキュメント</title> <script language="javascript" type="text/javascript"> function formcalc(formobj){ var val_a= formobj.elements["para_a"].value; var val_b= formobj.elements["para_b"].value formobj.elements["answer"].value = val_a * val_b } function chktext(){ var obj = document.getElementById("id1"); obj.innerText="テキスト変更しました。"; } </script> </head> <body> <form> <input size="10" type="text" name="para_a" value="0" />× <input size="10" type="text" name="para_b" value="0" />= <input size="10" type="text" name="answer" /><br /> <input type="button" name="keisan" value="計算" onclick="formcalc(this.form)" /> </form> <br /><br /><br /><br /> <p id="id1" onMouseOver="this.innerText='受付終了'">最初のテキスト</p> </body> </html>

  • お願いしますjavascriptです

    javascript 初心者なのですが、どうしてもわからないため、 ご教授お願いたします。 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> <title>おみくじ</title> </head> <body> <script type="text/javascript"> <!-- //0~4の乱数を作る //0:大吉, 1:中吉, 2:小吉 ,3:吉, 4:凶 var rnd = Math.floor(Math.random() * 5) //おみくじの判定 switch (rnd){ case 0: var fortune = "大吉"; break; case 1: var fortune = "中吉"; break; case 2: var fortune = "小吉"; break; case 3: var fortune = "吉"; break; default: var fortune = "凶"; break; } //おみくじの表示 document.write("今日の運勢: " + fortune + "<br />"); //金運の表示 document.write("金運: "); var money = Math.floor(Math.random() * 5) + 1; for (var i = 0; i < money; i++) { document.write("(ダイヤ)"); } document.write("<br>"); //恋愛運の表示 document.write("恋愛運: "); var love = Math.floor(Math.random() * 5) + 1; for (var i = 0; i < love; i++) { document.write("&hearts;"); } document.write("<br>"); //健康運の表示 document.write("健康運: "); var health = Math.floor(Math.random() * 5) + 1; var i = 0; while (i < health){ document.write("(クラブ)"); i++; } document.write("<br>"); //--> </script> </body> </html> このソースに、分岐だと考えますが、 大吉が出た時は、金運、恋愛運、などのマークが3つ以上に設定、逆に 今日ならば各マークが3つ以下に設定するには Javascriptでどういう風に記述すればよいでしょうか。

  • JavaScriptが実装できない

    初めまして。 Google Maps APIを使ってwebページ上でgoogle mapsを表示させようと思い htmlファイルとjavascriptファイルを実装したのですがうまく動きません。 ソースコードは以下の通りです。 googlemaps.html <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /> <style type="text/css"> html, body { height: 100%; } </style> <script type="text/javascript" src="http://maps.google.com/maps/api/js?sensor=false"> </script> <script type="text/javascript" src="http://www.google.com/jsapi"></script> <script type="text/javascript"> google.load("jquery", "1.5.0"); </script> <script type="text/javascript" src="googlemaps.js"></script> <title>指定した位置を中心とする地図</title> </head> <body> <p> 緯度<input id="lat" type="text" value="35.632997" /> 経度<input id="lng" type="text" value="139.648609" /> <button id="button">地図を作る</button> </p> <div id="map_canvas" style="width: 100%; height: 90%;"></div> </body> </html> googlemaps.js $(document).ready(function() { $("#button").click(function() { // input要素の値を取得し、マップの中心を決める var lat = $("#lat").val(); var lng = $("#lng").val(); var myCenter = new google.maps.LatLng(lat, lng); // 地図のオプション var myOptions = { zoom : 14, center : myCenter, mapTypeId : google.maps.MapTypeId.ROADMAP // 必須 }; // 地図の生成 var myMap = new google.maps.Map(document.getElementById("map_canvas"), myOptions); // マーカーの生成 new google.maps.Marker( { position : myCenter, map : myMap, title : "Hello World!" }); }); }); firebugはgooglemaps.js 404 not foundといっているのでhtmlとjavascriptの連携が うまくいってないのだと思うのですが、どうすればいいのかわからず前にすすめません。 お詳しい方、ご教授ください。

  • jslintのエラーについて質問

    以下のソースコードであるエラーが出ました。それが何故エラーなのかがわからないので質問します。 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <html> <head> <title>STEP5演習</title> <meta http-equiv="Content-Type" content="text/html; charset=Shift_JIS"> <script type="text/javascript"> <!-- var a,b,kai; a=10; b=4; function tashizan(){ kai=a+b; alert("答えは"+kai+"です"); } function hikizan(){ kai=a-b; alert("答えは"+kai+"です"); } function kakezan(){ kai=a*b; alert("答えは"+kai+"です"); } function warizan(){ kai=a/b; alert("答えは"+kai+"です"); } fanction amari(){ kai=a%b; alert("答えは"+kai+"です"); } //--> </script> </head> <BODY> <H3>変数の演算</H3> a=10、b=4について、<BR> 変数「a」と「b」の計算結果を表示します。<BR> <BR> <BUTTON onclick="tashizan()">足し算</BUTTON> <BUTTON onclick="hikizan()">引き算</BUTTON> <BUTTON onclick="kakezan()">掛け算</BUTTON> <BUTTON onclick="warizan()">割り算</BUTTON> <BUTTON onclick="amari()">余り</BUTTON> </BODY> </html> 質問:エラーとして『Expected an identifier and instead saw '<!'.』(javsscript構文内の「<!--」のやつです)と出ました。何故ですか? 何がエラーかぜんぜんわからない。 投稿日時 - 2012-07-10 22:34:33

  • ジャバスクリプトが動かない

    Windows7 64ビット IE9 次のスクリプトでボタンを押しても反応しません。 どこがおかしいのでしょうか。教えてください。 <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"> <html> <head> <meta content="text/html; charset=Shift_JIS" http-equiv="content-type"> <title>貯血スケジュールの作成</title> <script language="JavaScript"> <!-- function kotae(){ var kai = 37; alert(kai); } //--> </script> </head><body> <h3>問題</h3> 16+21= <button onclick="kotae()">答えを見る</button> </body></html>

専門家に質問してみよう