eval()の呼び出しに構文エラーや未定義の変数などがあるかどうかを調べることができるかどうかを知りたかったので、 javascriptには、そのevalのエラー出力をキャプチャする方法はありますか?eval javascript、構文エラーがないか確認する
答えて
エラーが実際にSyntaxErrorであるかどうかをテストすることができます。 Mozilla documentation for eval
によると
try {
eval(code);
} catch (e) {
if (e instanceof SyntaxError) {
alert(e.message);
}
}
:
のevalは最後に評価された式の値を返します。
だから、あなたは運が悪いと思う。この同じドキュメントでは、eval
を使用することをお勧めします。
eval()は危険な関数で、呼び出し元の権限で渡されたコードを実行します。 eval()を悪意のある当事者の影響を受ける可能性のある文字列で実行すると、ウェブページ/拡張機能の権限で悪質なコードが実行される可能性があります。さらに重要なことは、サードパーティのコードはeval()が呼び出されたスコープを見ることができ、同様の機能が影響を受けないような攻撃を引き起こす可能性があることです。
この機能を使用する前に、リスクに注意してください。
eval being evilについて、ゴールデンルール:ユーザー入力を評価しないでください。自分で定義したeval文字列のみをサーバーから取得します。はい、MiTM攻撃ですが、サーバーを信頼できない場合は、より大きな問題があります。 – CularBytes
http://www.jslint.com/には、javascriptで書かれたjavascriptパーサーが含まれています。それはあなたのコードに関する多くの情報を提供し、よりリラックスできるように設定することができます。
特定のタイプのエラーをキャッチするためにtry catchを使用する場合、他のタイプの例外抑圧された。そうでなければ、評価されたコードが異なる種類の例外をスローすると、コードが消滅し、予期しない動作が発生する可能性があります。
私はこのようなコードを足すことをお勧め:
try {
eval(code);
} catch (e) {
if (e instanceof SyntaxError) {
alert(e.message);
} else {
throw(e);
}
}
"他" のセクションを注意してください。
throwは関数ではありません – Dev
- 1. JavaScript eval()構文
- 2. Eval()でエラーが発生するJavaScriptの構文が完全に
- 3. Eval(AND式)が無効な構文エラーを返します
- 4. ACE Webエディタで構文エラーがないか確認してください。
- 5. ACEの変更ハンドラでJavaScript構文が有効かどうかを確認
- 6. evalのコードの構文エラー、予期しない「)」
- 7. ファイルサイズの確認中に構文エラーが発生する
- 8. Javascriptを確認するエラー
- 9. のjQuery/Javascriptの置換「構文エラー、認識できない式」
- 10. ルビー:(evalの):1:構文エラー、私は次の構文エラーになっています
- 11. JavaScriptがパスワード確認のための/その他の構文
- 12. 文字列がJavaScriptの空白でないかどうかを確認する
- 13. 巨大なEvalステートメントの構文エラーをデバッグ
- 14. パスワードとjavascriptエラーでパスワードの確認を確認しますか?
- 15. UNIX/vim - 構文エラーを確認してください
- 16. 構文解析エラー:予期しない構文エラー ''(T_ENCAPSED_AND_WHITESPACE)
- 17. 構文エラーのない行に構文エラーがあります
- 18. TeXの構文を確認する
- 19. JavaScript XMLHttpRequest構文エラー
- 20. javascriptの構文エラー
- 21. Javascript Program構文エラー
- 22. Javascript - カスタムプロトタイプ - 構文エラー
- 23. JavaScript RegEx構文エラー
- 24. 構文エラー:JavaScriptの
- 25. JavaScriptの構文エラー{
- 26. エラー:構文エラー、認識できない表現に戻るHTML
- 27. コマンドラインからのC#構文の確認
- 28. 有効なjavascript構文の構文エラーを与えるyui compress
- 29. ReactJS - 不明なエラー:構文エラー、認識できない表現
- 30. Javascriptの構文エラーが予期しないトークンが無効
なぜ私は自分自身でこれを試していないのだろうと思っています。どうもありがとう! –
@イエス - あなたが疑問に思っている事実は良いことです。とにかく、幸運。 – ChaosPandion