ホームページ >ウェブフロントエンド >jsチュートリアル >JavaScript_javascript スキルに関するいくつかの見解

JavaScript_javascript スキルに関するいくつかの見解

WBOY
WBOYオリジナル
2016-05-16 18:52:161148ブラウズ

ご存知のとおり、セミコロンまたはキャリッジ リターンで終わる JS コードは、ブラウザ (少なくとも私の IE7 では) で通常どおり実行されます。これが JS 言語の機能なのか、それともインタプリタのフォールト トレラント機能だけなのかはわかりません。キャリッジ リターン文字はコードの終わりを示す記号にもなるため、JS を圧縮する場合はさらに面倒です。すべての復帰を圧縮するには、プログラムはステートメントの終わりがどこにあるかを認識し、終了位置の後に「;」を追加する必要があります。これは簡単なことではありません (おそらく、私がまだ考えていない簡単な方法があるかもしれません)。最終的には、必要な復帰文字を保持し、「;」、「、」を削除するという妥協的な方法を採用する必要がありました。 "、" など、キャリッジ リターン文字区切り文字の前後に続きます。 (JS が C や他の言語のように ";" で終わったらどんなに楽でしょう!)
開発プロセス中に、奇妙な問題も発見しました。次のコードに示すように:

コードをコピー コードは次のとおりです。

1< body>
2
3<script> <br>4 <br>5function class1(){}; <br>6 <br>7class1.prototype.ShowMessage = function ShowMsg() <br>8 🎜>9 アラート("ShowMsg 関数!"); <br>10} <br>11var test = new class1(); <br>13</script> 🎜>15< ;/body>


上記のコードは正常に実行できます。
11 行目の前の「n」を削除すると、プログラムは次のようになります。



コードをコピーします3