坑道を埋める:use strict
1195 ワード
一、何ですか
通常動作モード以外に、ECMAscript 5は第二の運転モードを追加しました.「厳格モード」(strit mode).名前の通り、このようなモードはJavascriptをより厳しい条件で実行させる(ES 6はデフォルトでは厳格なモードを使用する).
どうしてですか
「厳格モード」はJavascriptがより合理的で、より安全で、より厳格な発展方向を表しています.IE 10を含む主流ブラウザは、すでにそれを支持しています.多くの大項目はすでに全面的にそれを抱き始めました.同じコードでも、「厳格モード」では、異なる運転結果が出る可能性があります.いくつかの「ノーマルモード」で動作できるステートメントは、「厳格モード」では動作しません.これらの内容を把握することは、Javascriptをより詳細に理解し、より良いプログラマーになるためです.
三、どう使いますか
スクリプトファイルのヘッダ(スクリプトファイル全体に対して)または関数内(単一の関数に対して)
四、どこが悪いですか変数は宣言してから を使用しなければなりません.関数のパラメータは同じ名前の属性を持つことができません. with文は使えません. 読み取り専用属性に値を付けてはいけません.そうでないと エラーが発生します.は、プレフィクス0を使用して8進数を表してはいけません.さもなければ、エラー を報告します.は削除できない属性を削除できません.そうでなければエラー を報告します.変数delete propを削除できません.エラーが発生します.属性delete globalを削除するしかありません. evalは、その外層作用領域に変数を導入しない . evalとargmentsは、 の値を再割り当てすることができません.アーグメンントは、関数パラメータの変化を自動的に反映しない アーグメンツ.callee は使えません.アーグメンツ.caller は使用できません. thisがグローバルオブジェクト を指すことを禁止する.は、fn.callerとfn.argmentsを使用して関数呼び出しのスタック を取得できない.は、プロテcted、static、interfaceなどの保留文字を追加しました.
通常動作モード以外に、ECMAscript 5は第二の運転モードを追加しました.「厳格モード」(strit mode).名前の通り、このようなモードはJavascriptをより厳しい条件で実行させる(ES 6はデフォルトでは厳格なモードを使用する).
どうしてですか
「厳格モード」はJavascriptがより合理的で、より安全で、より厳格な発展方向を表しています.IE 10を含む主流ブラウザは、すでにそれを支持しています.多くの大項目はすでに全面的にそれを抱き始めました.同じコードでも、「厳格モード」では、異なる運転結果が出る可能性があります.いくつかの「ノーマルモード」で動作できるステートメントは、「厳格モード」では動作しません.これらの内容を把握することは、Javascriptをより詳細に理解し、より良いプログラマーになるためです.
三、どう使いますか
スクリプトファイルのヘッダ(スクリプトファイル全体に対して)または関数内(単一の関数に対して)
"use strict"; // , 。
フィールドが厳密モードに入ることを表します.四、どこが悪いですか