機種間の差



 JavaScriptは機種に依存しないように作成されています。と書くと全くの嘘になってしまいます。いろいろスクリプトを作成すれば、するほど機種間の差を考慮しなければならなくなります。これに加えてバージョンによる違い、Explorer 3.0xとの兼ね合いがあるため、自分のマシンや友人のマシン2、3台でで動作したから安心というわけにはいきません。以下に機種間の差を上げておきますので参考にしてください。また「互換動作が期待できる命令」も参考にしてください。

改行コード
 Mac,Win,UNIXそれぞれ改行コードが異なります。フォーム入力の複数行入力(<TEXTAREA>タグ)を行った場合に発生します。CGIにテキストデータを渡す場合CGI側で処理させるよりもJavaScriptで行った方が結果的には速くなります。

カラー設定
 bgColorのバグだけでなくfgColorのバグがあります。Explorer 3.02ではfgColorは正常に反映(設定/変更)されますがalinkColorは反映されません。

PBMの表示
 PBM(Portable BitMap)は白黒の画像形式です。JavaScriptでPBMを生成するスクリプトを作成するとUNIXマシン以外は正常に表示されません。Win, Macともに急激に動作が遅くなります。また大量のビットマップ表示を行わせるとMacはマシンがハングアップしてしまう危険性があります(メモリを大量に割り当てても同じです)。

LiveConnect
 Javaアプレットとの通信(データのやりとり)を行ったりしますが、正常に機能しているのはJavaアプレットくらいでLiveAudioやQTなどを制御しようとするとエラーで停止してしまいます。

その他
 まだまだ機種間の差異はあるはずです。Netscapeでは何事もないアンカータグであってもExplorer 3.0xではエラーが発生したりファイルを削除できたりするなどセキュリティの問題もあります。Netscape 3.0以降はブラウザを一部改造する事でセキュリティを強化する事もできます。これに関してはNetscape社のJavaScriptのページを参照してください。