次のように、string、xml、javascript、および(引用符なしの非javascript文字列)のようなすべての入力を持つことができるjavascript上に何かを構築しようとしています:
//strings
eval("'hello I am a string'"); /* note the following proper quote marks */
//xml
eval(<p>Hello I am a XML doc</p>);
//javascript
eval("var hello = 2+2;");
したがって、この最初の3つは、単純なjavascriptネイティブ形式であるため、うまく機能しています。
しかし、これをjavascript内で使用しようとすると
//plain-text without quotes
eval("hello I am a plain text without quotes");
//--SyntaxError: missing ; before statement:--//
明らかに、javascriptは、javascriptがSyntaxErrorをスローしていると見なすため、これを構文エラーとして解釈します。
そこで、このエラーをキャッチし、発生した場合の調整方法を実行したいと思います。
私はすでにtrycatchを試しましたが、コードを実行しようとするとすぐに構文エラーを返し続けるため、機能しません。
どんな助けでも大歓迎です
乾杯 :)
追加情報: JavaScriptがspidermonkeyを使用して読み取る外部ファイルを想像してみてください。これは、ブラウザー以外のものです(HttpRequest、DOMなどは使用できません)。これが重要かどうかはわかりませんが、あります。:)