• 締切済み

Javaスクリプトの初歩の初歩

Javasript覚えがてらに以下の カリー化されたソースを実行しましたが、Type Error:add is not functioという 例外が返ってきます。なぜ、ファンクションエラーになるのか教えてください <html> <head> <meta http-equiv="content-type" content="text/html;charset=UTF-8"> <script src="jquery-1.9.0.min.js"> </script> <script> <!-- function add(x,y){ var oldx=x,oldy=y; if(typeof oldy==="underfined"){ return function(newy){ return oldx+newy; }; } return x+y; } typeof add(5); add(3)(4); var add2000=add(2000); add2000(10); --> </script> </head> <body> </body> </html>

みんなの回答

回答No.3

あ、すみません if(typeof 変数 === "undefined"){ は正しかったです if(変数===undefined){ typeof付けない場合はこうです誤答すみません

全文を見る
すると、全ての回答が全文表示されます。
回答No.2

#1さんが回答を付けてますが補足 これが正しいはず if(typeof oldy === undefined){} underfined → undefined スペルが違うのがまず1点 = 3つでオブジェクトタイプで比較します "で括ってしまうと文字列として扱ってしまい実際には オブジェクトタイプ === 文字列 となって文字列か否かを比較してしまいます

masutoro32
質問者

お礼

僕の勘違いだったみたいです。 どうもありがとうございました

全文を見る
すると、全ての回答が全文表示されます。
  • Picosoft
  • ベストアンサー率70% (274/391)
回答No.1

> if(typeof oldy==="underfined"){ underfinedではなくundefinedです。

全文を見る
すると、全ての回答が全文表示されます。

関連するQ&A

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

    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>

  • ジャバスクリプトが作動しません。

    初めまして、素人なので的外れな質問だったら恐縮です。 以下のようにジャバスクリプトを2つ記述しましたが、後ろに記述した1つしか作動しません。 記述の順番を入れ替えても、やはり後ろに記述した方しか作動しません。 何が悪いのか、どなたか教えて頂けますでしょうか? <head> <meta http-equiv="Content-Type" content="text/html; charset=shift_jis" /> <meta http-equiv="Content-Style-Type" content="text/css" /> <meta http-equiv="Content-Script-Type" content="text/javascript" /> <title>ホームページテンプレート</title> <meta name="description" content="説明を入れます" /> <meta name="keywords" content="キーワード" /> <link href="css/style.css" rel="stylesheet" type="text/css" /> <script type="text/javascript" src="js/script.js"></script> <link href="css/gallery11.css" rel="stylesheet" type="text/css" media="screen" /> <script type="text/javascript" src="js/prototype.js"></script> <script type="text/javascript" src="js/effects.js"></script> <script type="text/javascript" src="js/glider.js"></script> <script type="text/javascript"><!-- Event.observe(window, "load", function(){ new Glider("album1", { duration:1.0 } ); }); // --></script> <script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1/jquery.min.js"></script> <script type="text/javascript"> $(function(){ var setImg = '#viewer'; var fadeSpeed = 1500; var switchDelay = 5000; $(setImg).children('img').css({opacity:'0'}); $(setImg + ' img:first').stop().animate({opacity:'1',zIndex:'20'},fadeSpeed); setInterval(function(){ $(setImg + ' :first-child').animate({opacity:'0'},fadeSpeed).next('img').animate({opacity:'1'},fadeSpeed).end().appendTo(setImg); },switchDelay); }); </script> </head>

  • ScriptがFirefoxで動かない。

    素人な質問ですみません。 htmlファイルで背景画像をスクロール させようとしています。   Internet ExplorerとGoogleChromeでは 動作するのですが、FireFoxで動作しません。 自分で調べてもわからなかったため、 知識のある方にご教授をお願いしたいです。 よろしくお願いします。   <HTML><LEFT><HEAD> <META HTTP-EQUIV="Context-Type" content="text/html; charset=SHIFT-JIS"><!-- あ --><META NAME="Description" CONTENT=" "><meta http-equiv="adimage" content="200"><TITLE>menu</TITLE> <HEAD> <script language="JavaScript"> <!-- var myspd= 120; var y = 0; function mygo() { document.body.style.backgroundPositionY = y--;   setTimeout("mygo()",myspd); } // --></script> </HEAD> <BODY BACKGROUND="http://hakoniwakensetsu.web.fc2.com/img/kumo.gif" onLoad="mygo();"> </BODY></LEFT></HTML>

  • ホームページでのジャバスクリプトについて

    下記の記述でimport行を書くと構文エラーになりました。 解決方法を教えてください。 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> <HTML> <HEAD> <META http-equiv="Content-Type" content="text/html; charset=Shift_JIS"> <META http-equiv="Content-Style-Type" content="text/css"> <META http-equiv="Content-Script-Type" content="text/javascript"> <TITLE>2013秋限定</TITLE> <SCRIPT language="JavaScript"> <!-- import javax.swing.JFrame; import javax.swing.JOptionPane; function chk8() { JFrame parent = ...; JOptionPane.showMessageDialog(parent, "合計が8個になっていません、\nもう一度入力してください。", "入力エラー", JOptionPane.WARNING_MESSAGE); return true; } //--> </SCRIPT> </HEAD> <BODY bgcolor="#ffffff"> ・ ・ ・ <INPUT type="button" value="購入する" onClick="chk8()"> ・ ・ ・ </BODY> </HTML>

  • 初心者です。あまりに初歩的なことなのではずかしいのですが教えて頂けます

    初心者です。あまりに初歩的なことなのではずかしいのですが教えて頂けますと幸いです。 本を片手にjQueryを勉強し始めました。(JavaScriptの初歩は勉強しました。) jQueryを記述したものを『script.js』という外部ファイルで保存し、htmlファイルにリンクし参照させています。 ブラウザでテストしてみたところ、きちんと動作します。 ただ、『script.js』ファイルを開こうとクリックするとWindows Script Hostのエラーウィンドウ「エラー:文字が正しくありません」 と表示されてしまいます。 文字コードや全角スペースが混ざっていないか等、色々と試しましたが相変わらずエラーで困っています。 外部ファイルに記述、というのが理解不足の初心者には難しいのかとも思うのですが…。 htmlファイルのソースは以下の通りです。 <!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" xml:lang="ja" lang="ja"> <head> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /> <meta http-equiv="Content-Style-Type" content="text/css" /> <meta http-equiv="Content-Script-Type" content="text/javascript" /> <title>sample1</title> <script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.3.2/jquery.min.js"></script> <script type="text/javascript" src="script.js" charset="UTF-8"> </script> </head> <body> <ul> <li>テキストテキストテキストテキストテキスト</li> <li>テキストテキストテキストテキストテキスト</li> <li>テキストテキストテキストテキストテキスト</li> <li>テキストテキストテキストテキストテキスト</li> </ul> </body> </html> また、問題の『script.js』ファイルは以下のように記述しています。 $(function(){ $("li").css("color","red"); });

  • JAVAスクリプトで「ランダムURL表示・任意のサイズの小窓を出す」と

    JAVAスクリプトで「ランダムURL表示・任意のサイズの小窓を出す」というものを作りたいのですが。 今現在、「ランダムURL表示と、新しい窓を出す」というところまで出来ておりますが、窓のサイズを指定するところでつまずいております。 以下が現在の状況です。 ---------------------------------------------------------------------------------- <HTML> <HEAD> <META http-equiv="Content-Type" content="text/html; charset=Shift_JIS"> <META http-equiv="Content-Style-Type" content="text/css"> <TITLE></TITLE> <script type="text/javascript"> var links = ['1.html','5.html','2.html','9.html','1.html','3.html','7.html','10.html','4.html','1.html','6.html','8.html']; function RandomLink() { var Link = links[Math.floor(Math.random() * links.length)]; window.open(Link); } </script> </HEAD> <BODY><A target="_blank" alt="???" onclick="RandomLink();return false;" href="">おみくじ</A></BODY> </HTML> -------------------------------------------------------------------------------- ここから窓のサイズをかえるスクリプト、 例えば -------------------------------------------------------------------------------- <script language="JavaScript"> <!-- function subWin01(){window.open("URL","window1","scrollbars=no,status=no,menubar=no,toolbar=no, resizable=no,width=200,height=200");} //--> </script> BODY間 <A href="javascript:subWin01()">おみくじ</A>」 ---------------------------------------------------------------------------------- のようなものを挿入したいのですが、基本的な事がまだ飲み込めていないせいか、どこに入れてもうまく動いてくれません。 そもそも、「ランダムURL表示・任意のサイズの小窓を出す」といった重複した使い方が出来るのかも分かっておりません。 初歩的な質問だとは思いますが、この「ランダムURL表示・任意のサイズの小窓を出す」という事が出来るのか、出来るとしたらどこにどう記述すれば良いかを教えていただけたらと思います。 どうぞ宜しくお願いいたします。

  • 環境:WinXP+IE7+jquery1.4.2

    環境:WinXP+IE7+jquery1.4.2 次のようなコードで、メニューをクリックすると、メニューを非表示にしているのですが、画面が一瞬ちらつきます。ちらつきを無くすには、どうすればよいでしょうか? よろしくお願いします。 【コード】 <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> <script type="text/javascript" src="../ajax/jquery.js"></script> <script language="JavaScript"> <!-- $(document).ready( function(){ $("#menu").click(function(){ $(this).hide(300); }) } ); //--> </script> </head> <body> <div id="menu">メニュー</div> <div id="doc">コンテンツ<br/>○○○○○○○○○○○○○○○<br/></div> </body> </html>

  • コールバック関数が上手くいかないです

    こんにちは。 ブラウザ上に70と表示させるため、以下のソースを書きましたがうまくいきません。 <!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=utf-8" /> <title>無題ドキュメント</title> <script type="text/javascript"> //<![CDATA[ function funcA(a) { alert(a + 10); } function funcB(b, func) { var x = b + 2; func(x); } function funcC(c){ var body = document.body; body.innerHTML = c * 10; } funcB(5,funcC); //]]> </script> </head> <body> </body> </html> どなたか詳しい方、ご教示お願いいたします。

  • 別URLからのJSON取得がうまくいかないので教えてください

    楽天書籍検索APIをJSONで取得したいのですが、うまく表示されません。 以下のソースで何がまずいか教えていただけますでしょうか。 ※[YOUR_developerID]にはIDが入っているものとします <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /> <title>JSON</title> <meta http-equiv="Content-Script-Type" content="text/javascript" /> <script type="text/javascript" src="http://www.google.com/jsapi"></script> <script type="text/javascript">google.load("jquery", "1.2.6");</script> <script type="text/javascript"> $(function(){ $.getJSON("http://api.rakuten.co.jp/rws/2.0/json?developerId=[YOUR_developerID]&operation=BooksTotalSearch&version=2009-03-26&keyword=%E3%82%AC%E3%83%B3%E3%83%80%E3%83%A0&sort=-releaseDate", function(jsonData){ $(jsonData.Body.BooksBookSearch.Items.Item).each(function(){ $("body").append(this.title+"<hr />"); }) }) }) </script> </head> <body>

  • nameに「:」があるとスクリプトエラーになる

    JavaScriptを使って Selectボックスに値を追加しようとしています。 しかし、Selectボックスのnameに「:」があると スクリプトエラーが発生してしまいます。。。 nameを変えずに、スクリプトエラーを回避する方法 をご存知の方、ご教授下さい。 よろしくお願いします。 例------------------------------------------- <html> <head> <title>tset</title> <SCRIPT LANGUAGE="Javascript"> <!-- function addList(){ var oAdd = document.createElement("OPTION"); oAdd.text = "test" document.fm.aaa:bbb.add(oAdd); } // --> </SCRIPT> </head> <body> <form name="fm"> <select name="aaa:bbb"> </select> <input type="button" name="btn" value="add" onClick="javascript:addList()"> </form> </body> </html>