[1日1 js]JavaScriptのコールバック関数
8679 ワード
https://www.impressivewebs.com/callback-functions-javascript/
JavaScriptのコールバック関数
JavaScriptのコールバック関数
=>電話は阿可柏と言います;
コールバック関数とは?
パラメータとして他のコードに渡される実行コードまたは実行コードの参照.
例)addEventListener(クリック、function)
サイトではjQueryを例に挙げています.
コールバック関数を作成します。
console.clear();
function mySandwich(param1, param2, callback) {
console.log('Started eating my sandwich. It has: ' + param1 + ', ' + param2);
callback();
}
mySandwich('ham', 'cheese', function() {
console.log('Finished eating my sandwich.');
});
=>わあ、これでめちゃくちゃに...
=>まずfunction mySandwichは定義にすぎません
=>実際の実行は次のmySandwichセクションで、定義が開始されます.
だから私はサンドイッチを食べ始めました.Ithas:コンソールに「+param 1+」、「+param 2」と表示されます.
=>param 1およびparam 2は、定義されたhamおよびcheeseを反映する.
=>次にcallback()を実行します.
=>実際のパラメータはかっこなしのコールバックですが、ロールバックが斜行の場合はカッコで完了します.
=>大かっこで必要に応じてパラメータを呼び出すことができます.
=>最後のラーニングでは、()を使用してすぐに実行し、使用しない場合は起動時に実行します.
(ここは大丈夫だけど、復習としては…ははは)
JavaScriptでコールバック関数を選択
=>コールバックを選択できます.
=>未作成の場合function mySandwich (param1, param2, callback) {
console .log( '내 샌드위치를 먹기 시작했습니다. ' + param1 + ', ' + param2);
콜백();
}
// 필수 인수가 누락되었습니다. 브라우저의 개발자 도구에서 다음 오류 메시지를 확인하십시오. Uncaught TypeError: callback is not a function at mySandwich
mySandwich( 'ham' , 'cheese' );
function mySandwich (param1, param2, callback) {
console .log( '내 샌드위치를 먹기 시작했습니다. ' + param1 + ', ' + param2);
if (콜백) {
콜백();
}
}
// 세 번째 인수는 없지만 콜백을 먼저 확인하기 때문에 오류는 없습니다.
mySandwich( '햄' , '치즈' );
=>強制的に書かせてください
コールバックが関数であることを確認
=>なぜ関数なのかを確定しなければならないと思っていました.
=>次の手順を経ると、スムーズに完了します.
=>typeof()チェック関数の使用function mySandwich (param1, param2, callback) {
console .log( '내 샌드위치를 먹기 시작했습니다. ' + param1 + ', ' + param2);
if (콜백 && typeof (콜백) === '함수' ) {
콜백();
}
}
// 세 번째 인수는 함수가 아닙니다.
mySandwich( 'ham' , 'cheese' , 'vegetables' );
JavaScriptでコールバック関数を使用する場合のタイミングの注意点
非同期実行が含まれている場合は、非同期操作が開始された後にコールバックが実行されますが、完了する前に実行される場合があります.
=>まずsetTime関数と同じ理由で最後ではない可能性があります.
コールバック関数は、関数内のすべてのコードが同期されている場合にのみ、デフォルトの警告ロールとして機能する必要があります.
=>同じ話ですが、最終的に整理
Reference
この問題について([1日1 js]JavaScriptのコールバック関数), 我々は、より多くの情報をここで見つけました
https://velog.io/@2taesung/1일1js-JavaScript의-콜백-함수
テキストは自由に共有またはコピーできます。ただし、このドキュメントのURLは参考URLとして残しておいてください。
Collection and Share based on the CC Protocol
console.clear();
function mySandwich(param1, param2, callback) {
console.log('Started eating my sandwich. It has: ' + param1 + ', ' + param2);
callback();
}
mySandwich('ham', 'cheese', function() {
console.log('Finished eating my sandwich.');
});
function mySandwich (param1, param2, callback) {
console .log( '내 샌드위치를 먹기 시작했습니다. ' + param1 + ', ' + param2);
콜백();
}
// 필수 인수가 누락되었습니다. 브라우저의 개발자 도구에서 다음 오류 메시지를 확인하십시오. Uncaught TypeError: callback is not a function at mySandwich
mySandwich( 'ham' , 'cheese' );
function mySandwich (param1, param2, callback) {
console .log( '내 샌드위치를 먹기 시작했습니다. ' + param1 + ', ' + param2);
if (콜백) {
콜백();
}
}
// 세 번째 인수는 없지만 콜백을 먼저 확인하기 때문에 오류는 없습니다.
mySandwich( '햄' , '치즈' );
function mySandwich (param1, param2, callback) {
console .log( '내 샌드위치를 먹기 시작했습니다. ' + param1 + ', ' + param2);
if (콜백 && typeof (콜백) === '함수' ) {
콜백();
}
}
// 세 번째 인수는 함수가 아닙니다.
mySandwich( 'ham' , 'cheese' , 'vegetables' );
Reference
この問題について([1日1 js]JavaScriptのコールバック関数), 我々は、より多くの情報をここで見つけました https://velog.io/@2taesung/1일1js-JavaScript의-콜백-함수テキストは自由に共有またはコピーできます。ただし、このドキュメントのURLは参考URLとして残しておいてください。
Collection and Share based on the CC Protocol