2016年12月11日日曜日

【JavaScript/HTML5】Webサイトトラブルの回避方法をプログラム側で制御する

Webサイトのトラブル解決について、調べてみたので、まとめてみました。

1、メモリリーク(Javascriptのメモリリーク対策)
GC(ガベージコレクション)を(任意に行われるので、)意図的に行わせる
 → 変数に対し、明示的にnullをセットした時
必要が無い場合はクロージャの利用を避ける
 ⇒クロシージャは、自分を囲むスコープにある変数を参照できる関数
循環参照によるメモリリークを避ける

※以前説明したIEの開発ツールのメモリツールを使って、循環参照している箇所をみつけましょう。

2、文字化け
ブラウザがどの文字エンコーディング(特定の文字をどのようなバイナリ値で表現するかを規定したルール)か分からず、発生します。
htmlファイル内に次のタグを追加して、文字エンコーディングをUTF-8に指定します。

 <meta charset="UTF-8">

※サーバへのリクエスト・レスポンスも文字化けが起こっている場合は、文字エンコーディングが原因かもしれません。(サーバ側での文字コードの設定も確認しましょう)

3、最新のサイトが表示されない
ブラウザのキャッシュが原因なので、htmlファイル内に、キャッシュを使わないように指定します。

<meta http-equiv="Pragma" content="no-cache">

※HTTPヘッダで指定する方法もあります

4、互換性が問題で表示されない
以下のURLで記載していますように、IEの互換性が問題で表示できない場合があります。
http://www.buildinsider.net/web/ie11attention/01

htmlファイル内に、最新レンダリングを指定します。
<meta http-equiv="X-UA-Compatible" content="IE=edge">





【参考URL】
https://utage.headwaters.co.jp/blog/?p=1116
http://itpro.nikkeibp.co.jp/article/lecture/20061218/257172/
http://qiita.com/takeharu/items/4975031faf6f7baf077a 
https://www.html5rocks.com/ja/tutorials/memory/effectivemanagement/
http://www.ibm.com/developerworks/jp/web/library/wa-jsmemory/

0 件のコメント:

コメントを投稿