0

IE9 で構文上意味のないエラーが表示されます。missing )

以前はExpected ;以前の SO 投稿はこちら

他のブラウザではランダム エラーは表示されず、私のコードは jslint.com と jshint.com に合格しています。

snuck私のコードにユニコードがないことを確認したいので、正規表現で実行して確認します

[\x00-\x7F]

これは有効なアプローチですか?

関連している

http://en.wikipedia.org/wiki/ASCII

4

1 に答える 1

1

IEで開発したのは10年近く前なので記憶違いかもしれませんが、IEはコード中の制御文字(0x20以下の文字、改行、改行、タブ以外)が苦手だった記憶があります。 .

使用しているエディタによっては、コントロール コード 0x00 ~ 0x1fCTRLのいずれかを同時に押すと、コントロール コードを簡単に挿入できます。@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_

正規表現を使用して、印刷可能な ASCII と許可された制御文字しかないことを検証する場合は、^[\x09\x0a\x0d\x20-\x7e]*$. タブ (x09)、ライン フィード (x0a)、キャリッジ リターン (x0d)、およびすべての印刷可能な ASCII 文字を使用できます。削除 (x7f) は省略されています。

印刷可能な ASCII または許可された制御文字ではないものがあるかどうかを検出したい場合は、 を使用[^\x09\x0a\x0d\x20-\x7f]して、タブ、ライン フィード、キャリッジ リターン、または印刷可能な ASCII 以外のものを照合できます。

Unicode には、次の行 (\u0085)、行区切り (\u2028)、段落区切り (\u2029) などの新しい行末記号があります。

多くのインターネット プロトコル (および Windows システムの通常のテキスト ファイル) では、行の終わりがキャリッジ リターンとそれに続くライン フィード ( \0x0d\0x0a) で示されることを期待しています。たとえば、アンダースコアを書くことができるように、次の行に進まずに改行します。同じ行をもう一度印刷してテキストを少し太くしたり、グレースケールで印刷したりするためにも使用できます...

于 2012-09-09T00:16:08.953 に答える