![](http://oshiete.xgoo.jp/images/v2/pc/qa/question_title.png?e8efa67)
HTML5で、javascriptの中に、
============ソース一部===========
//関数
function a(evt) {
if (evt.keyCode == 39)
rD = true;
}
document.onkeydown = a;
============ソース一部 ここまで===========
と記述されている文がありました。
document.onkeydown = a;
で、onkeydownに、a関数を登録したのだろうということまでは
予想がつくのですが、aの後ろに()は不要なのでしょうか?
キーが押されたイベントが、evtには自動で入ってると思うのですが、
関数登録?呼び出し宣言をするときに、
document.onkeydown = a();
ではなく
document.onkeydown = a;
の理由がわかりません。
どこを見ると、()なしでいいという情報を得ることができるでしょうか
ご教授よろしくお願いします。
A 回答 (2件)
- 最新から表示
- 回答順に表示
No.2
- 回答日時:
先に回答されている方の通りです。
a() は、 a関数を実行するということですので、
document.onkeydown = a();
だと、a関数を実行した戻り値を代入することになり、結果戻り値なしなので、undefined を代入することになります。
document.onkeydown = a;
なら、a関数自体を代入していますので、documentオブジェクトでkeydownイベントが発生したときに、実行してくれます。
この回答への補足
情報ありがとうございます。
関数で引数を使用するものがあると思うのですが、
keisan(1,2);
等で
function keisan(x,y){
a=x+y;
documnet.write(a);
}
の場合、
document.onkeydown = keisan();
の使い方は間違っているということになるのでしょうか?
キーが押されたとき、足し算させて処理をさせ、結果を表示させる。
という内容にしたいのですが。
No.1
- 回答日時:
>document.onkeydown = a();
は、a()の戻り値を代入するという意味です
この回答への補足
情報ありがとうございます。
関数で引数を使用するものがあると思うのですが、
keisan(1,2);
等で
function keisan(x,y){
a=x+y;
documnet.write(a);
}
の場合、
document.onkeydown = keisan();
の使い方は間違っているということになるのでしょうか?
キーが押されたとき、足し算させて処理をさせ、結果を表示させる。
という内容にしたいのですが。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- その他(プログラミング・Web制作) Latexに関する質問です。 3 2023/05/23 10:18
- JavaScript 画像の表示位置 3 2022/12/23 08:25
- JavaScript 追加ボタンを押した際に ok ボタンを押した場合のみ入力値が追記されるようにしたいです 6 2022/05/29 09:57
- その他(プログラミング・Web制作) VS CodeでTEXファイルにPDF形式の図を挿入する方法 2 2023/01/19 11:56
- その他(プログラミング・Web制作) COBOL数値転記をCOPY句内での仕様 6 2022/06/15 18:48
- Access(アクセス) Access 登録ボタンからサブフォームの更新 1 2022/07/22 10:23
- JavaScript html javascriptにてWeb SQLを操作したい。 2 2022/12/16 17:43
- HTML・CSS HTMLの条件によって表示方向が切り替わる実装のコードを教えて下さい。 (コードは下記リンクを参照) 1 2022/09/25 14:35
- その他(OS) デスクトップにアイコンが出来ました。これは消しても良いですか? 2 2022/11/13 10:09
- Excel(エクセル) フォルダ内のワードファイルをPDFに一括変換するVBA 3 2023/06/09 16:51
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
FireFoxのjavascriptで自動でキ...
-
クリッカブルマップのリンク部...
-
DOM要素を削除しても、イベント...
-
TexでΣの添え字の位置直し
-
VBAでIEのボタンを押してメッセ...
-
javascriptのdocument.allにつ...
-
このソースのif文をswitch文に...
-
removeEventListenerの必要性
-
プルダウンメニューの項目をク...
-
C#OpenCv V4にのエラーに関する...
-
関数でy=g(x)のgとは何の略です...
-
JavaScriptとHTMLの課題です
-
<a>タグのテキストを取得
-
JAVAスクリプトで指定時間以降...
-
同じIDで定義した要素の配列を...
-
GASでundefinedエラーが出ます
-
【正規表現】【javascript】CR...
-
window.openでタイトル名の指定
-
ドラッグでセルを選択した後に
-
undefinedを表示させない方法は...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
FireFoxのjavascriptで自動でキ...
-
Latexに関する質問です。
-
DOM要素を削除しても、イベント...
-
XMLでのAttributeを持ったNode...
-
TexでΣの添え字の位置直し
-
JavaScript window.openで開く...
-
Null またはオブジェクトではあ...
-
javascriptの基本的なことだと...
-
iframeのソースを取得したい
-
選択肢によってラジオボタンを...
-
excle VBA とweb上の検索を利用...
-
文字を一文字ずつ表示
-
ラジオボタンでreadonlyの切替え
-
responseTextについて
-
VBAのIE操作でframe構造のサイ...
-
サブウィンドウからのスタイル...
-
JavaScriptのdocument.all("変...
-
オンマウスについて
-
要素のリサイズをひろい、他の...
-
クリッカブルマップのリンク部...
おすすめ情報