タグ

2009年12月14日のブックマーク (4件)

  • JavaScript はどのように実行されるか - IT戦記

    JavaScript はどのように実行されるか Safari*1 の実装を例に JavaScript はどのようにして実行されているかを書く。自分用のメモ。日語の出来は気にしない 1. ブラウザを起動して以下のようなページを開いたとする <html> <head> <script> var a = 1; var b = 2; alert(a + b); </script> </head> <body> </body> </html> 2. インターネットからデータが到着する そうすると WebCore::FrameLoader::write という関数に生の文字列が渡される。型は char* だ。 http://trac.webkit.org/browser/trunk/WebCore/loader/FrameLoader.cpp#L990 この関数の中では、到着した文字の文字コードを解

    JavaScript はどのように実行されるか - IT戦記
  • "+="でも不十分、IEで性能発揮するには文字列サイズにも工夫必要 | エンタープライズ | マイコミジャーナル

    Tom Trenka氏は以前SitePenにおいてString Performance: an Analysisというタイトルのもとで興味深いドキュメントを公開した。同ドキュメントはdojox.string.Builderのパフォーマンスを改善することを目的として行われた分析の結果をまとめたもので、JavaScriptプログラミングには欠かせない興味深い結論が導き出されていた。 これまでのテクニックに従えば、文字列は一旦配列に分解してから操作をおこない、最後に文字列に戻した方が処理が高速になると考えられてきた。以前のIEであればその貧弱な文字列処理性能やGCの動作の影響でそれは事実だったが、最近のWebブラウザでは改善されており配列に分解するよりも"+="で連結した方が処理が高速になることが明らかになった。これがString Performance: an Analysisでの主な結論だ。

  • JavaScript文字列処理は"+="が十分高速、Safariもベター | エンタープライズ | マイコミジャーナル

    1秒でも早く動く快適なWebアプリケーションを開発することはフロントエンドプログラマやWebデベロッパが常に追い求めるところだが、SitePenにおいてTom Trenka氏による興味深い分析結果"String Performance: an Analysis"が公開されたので紹介しておきたい。同氏のドキュメントはテクニック的に参考になるものだ。 文字列処理はパフォーマンスを左右する重要な要素のひとつだ。Javaなどよく使われるプログラミング言語では文字列は変更不可能なオブジェクトとして扱われる。変更不可能にすることで文字列の重複を防ぎ、不要なデータのコピーを避けることで処理速度の向上が実現できるからだ。そのかわり文字列を編集する場合には、変更後の文字列を新しく生成するという手段をとる。このため文字列の編集という操作は新しく文字列を生成する操作と等価であるため、コストが高い処理になる。 そ

  • ウェブリブログ:サービスは終了しました。

    「ウェブリブログ」は 2023年1月31日 をもちましてサービス提供を終了いたしました。 2004年3月のサービス開始より19年近くもの間、沢山の皆さまにご愛用いただきましたことを心よりお礼申し上げます。今後とも、BIGLOBEをご愛顧賜りますよう、よろしくお願い申し上げます。 ※引っ越し先ブログへのリダイレクトサービスは2024年1月31日で終了いたしました。 BIGLOBEのサービス一覧

    ウェブリブログ:サービスは終了しました。