約束のコア技術に誤差の2州JSコールバック関数の処理

(また、高階関数として知られているコールバック関数、)コールバック関数であるかについて詳細に学ぶために時間を割いて

コールバック関数である関数のどのような種類の1

  • 自分(sittimeoutない独自の定義)を定義します
  • 呼び出さないでください
  • 自身の実行

1.同期および非同期コールバックコールバック関数

同期コールバック関数

ARR =定数[1,2 ,. 3 ] 
arr.forEach(項目 => { 
  にconsole.log(項目)
})// 同期コールバック、タスク(完了を待っている)を開始、直接コールバックに、その後実行ダウン

コンソール。 (ログ「後で」)

非同期コールバック

setTimeout(()=> { 
  にconsole.log(「コールバック()」
}、 0)// タスクが開始された後、コード実行、キューにタスク下、次のコードが実行され、その後、タスクの実行キュー 
にconsole.log( 「後で」)

エラー処理で2.JS

1.間違ったタイプ

  • エラー:親のすべての間違ったタイプ
  • ReferenceError参照変数は存在しません。
  • TypeError例外データ型が正しくありません。
  • 例外RangeError値が許容範囲内ではありません
  • SyntaxError構文エラー

エラーハンドラがダウンして実行されません(エラーは、プログラム実行ダウンの後にキャプチャされます)

2.エラー処理

キャプチャエラートライキャッチ(ネイティブプログラムでエラーが発生します)

  トライ{ 
    LET D 
    にconsole.log(d.xxx)
  } キャッチ(エラー){ 
    にconsole.log(エラー)
  } // エラーオブジェクトは、2つの属性を有し、スタックmassege

 

エラーを投げ:投げエラー+キャプチャ

  機能プロキシ(){
     IF(Date.now()。1%=== 2 ){ 
      はconsole.log( "OK" 
    } {
       スロー 新しい新しいエラー( 'これはエラー情報提示テキストerror.massageである')// 内部我々は、このによってスローコンクリート中のエラーを投げる
    } 
  } 
 試し{ 
   プロキシ()
 } キャッチ(エラー){ 
    (Error.message中)はconsole.log 
 }

 

3

おすすめ

転載: www.cnblogs.com/-constructor/p/12216104.html