14

Safari で次のスクリプトを実行する場合 (インスペクターを開いた状態)

window.onload = function() { 
    "use strict";
    var x = 1;
    debugger; // debugger will auto-break on this line
}

xそのブレークポイントにいるときにコンソールで要求すると、次のエラーが表示されます。

Error
message: "'with' statements are not valid in strict mode"

行を削除すると、そのブレークポイントでコンソールから"use strict";アクセスできるようになります。x

どちらの場合も、サイドバーのxScope Variablesに表示されます。

4

1 に答える 1

24

これは Safari の既知の問題のようです: https://bugs.webkit.org/show_bug.cgi?id=65829

エラーを再現するには、ブレークポイントで停止し、厳格モードのときにコンソールに任意のコードを入力するだけです。

バグレポートのコードは次のとおりです。

(function(){
    "use strict";
    debugger;
})();

したがって、ブレークポイントに到達したら、コンソールに移動して2+3(または任意の式) を入力すると、エラーが表示されます。

ここに画像の説明を入力

于 2011-12-17T14:57:57.353 に答える