0
<!DOCTYPE html>
<html>
<head>
<script>
var txt="";
function message()
{
try
  {
  adddlert("Welcome guest!");
  }
catch(err)
  {
  console.log(err);
  txt="There was an error on this page.\n\n";
  txt+="Error description: " + err.message + "\n\n";
  txt+="Click OK to continue.\n\n";
  console.log(txt);
  }
}
</script>
</head>

<body>
<input type="button" value="View message" onclick="message()" />
</body>

</html>

質問:

err.message内部の内容 (例) を確認したいerrorので、次の行を入力します: console.log(err);in chromo->console, it shows:ReferenceError {}so my question is: How could I check the contents/properties inside error?

4

3 に答える 3

0

私があなたの質問を理解していれば。あなたは正しいエラープロパティを求めています:

for(var propertyName in err) {
   console.log(propertyName + ": " + err[propertyName]);
}
于 2013-07-09T03:41:08.360 に答える
0

あなたを助けることができる他のコンソール方法があります。詳細については、API リファレンスを参照してください。

console.dir(object)

指定されたオブジェクトの JavaScript 表現を出力します。ログに記録されるオブジェクトが HTML 要素の場合、その DOM 表現のプロパティが表示されます。

このコードで

try  {
  adddlert("Welcome guest!");
} catch(err) {
  console.dir(err);
}

オブジェクトをコンソールに記録します。コンソールでオブジェクトを展開すると、以下のスクリーンショットが表示されます

Chrome コンソールのスクリーンショット

JSFiddle

于 2013-07-09T04:32:40.157 に答える
0

ブラウザー開発者ツールを使用してその場所 (catch ブロック内) にブレークポイントを配置し、変数を調べることができます。

debugger;または、catch ブロックに( debugger ) ステートメントを追加して、ブラウザー デバッガーがその場所でアクティブになるようにします。

debugger;

デモ:フィドル

于 2013-07-09T03:37:26.547 に答える