下記のコードようなajaxでコールバック関数を記載する時の引数の意味合いがよくわからなくなってしまいました。
これまでもいわゆる「引数」の理解にたびたび悩まされてきました。
例えばですが、
- PHP等で自己定義関数を作成する場合のfunctionの引数については
function calc(a){return a*2};
平凡な言い方ですが、ここでの引数は汎用的な関数を作成する場合で、可変値を置き換えたい場合に
この可変値を自己定義関数上の「引数」として設定するものと理解しております。
- Javascript(Jquery)でイベントのプロパティを拾いたい場合にはこの引数について
$('.hoge').on('keypress',function(e){
console.log(e.keyCode);
})
こちらも平凡な言い方ですが、この引数のeは上記の可変値を設定したい場合の汎用的な表現としての
引数とは根本的に異なり、Javascriptのイベントの内容や状態にアクセスしたい場合に設定しなければ
ならない引数で”Javascriptのイベントの内容を引き出すためのツール”であると理解しております。
1.まず1)と2)の通り、一口に引数と言ってもその意味合いは異なっている(自己定義関数とコールバック関数によりその性格が異なっていると勝手に理解しているのですが)ものと理解してもよろしのでしょうか?それとも異なる使い方をしているようで、本質的には同じ機能を有しているのでしょうか?
2.下記のように、ajaxのsuccessの際のコールバック関数の設定される引数がどのような意味があるのかがわかりません。もちろん、
sample.htmlの要素==<p>hello</p>==引数dat==html(dat)という関係であることはなんとなく
想像がつくのですが、上記のどの引数ともまた意味合いが異なっているように思えて、ますます引数とはなんたるかが混乱してきました。。
この機会に、様々なケースで使用される引数の、その本質について、理解したいと思っているのですが
この3つの例でわかりやすくご教示いただけるととても嬉しいです。
わがままなお願いでございますが、よろしくお願い申し上げます。
html
1//main.html 2 <div class="ques_btn" id="main_respo">Response</div> 3 <div class="insert"></div>
javascript
1 $(function(){ 2 $('#main_respo').on('click',function(){ 3 $.ajax({ 4 type:'GET', 5 url:'sample.html', 6 success: function(dat){//ここです 7 $('.insert').html(dat) 8 } 9 }) 10 }) 11})
html
1//sample.html 2<p>hello</p>
回答1件
あなたの回答
tips
プレビュー