2012-02-12 6 views
3

私は、ブラウザとノードの両方と互換性があるようにするJavaScriptライブラリを作成しようとしています。ただし、ノードAPIには、ブラウザでは提供されていない機能(圧縮など)があります。私はjavascriptでこの機能をコード化することが可能であることを知っているので、相互互換性がありますが、ノードのネイティブ・コンプレッションは、はるかに低レベルなので、はるかに優れています。ブラウザとノードに互換性のあるJavaScriptライブラリを作成する

ブラウザ互換コードとノードAPIを使用するコードをどのように分ける必要がありますか?

私はそれを見る方法、私は次のいずれかを行うことができます:

  • はそれがである環境から私のコードのフィギュアを作る2つの別々のスクリプト、ノード用とブラウザのための1つを作成し、
  • はすべて私のコードは同じに応じて行動が、私は

私はこれを解決するために何をすべきノードでなければならなかったいくつかのパフォーマンスの改善を失いますか?

+2

私の好みはあなたの最初の提案です。私の2番目の好みは、2番目の提案です。私は第三をしません。 – nnnnnn

+0

私はおそらくRequireJSとノードアダプタを使用します。これにより、コードの少なくとも一部を共有することができます。 –

+0

@nnnnnn私もこの問題の解決法を見つけることに興味があります。 Javascriptライブラリが複数のJavascript実装(Rhino、Node.js、ブラウザサイドのJavascriptなど)で動作するようにする方法はありますか? –

答えて

4

これは古い質問ですが、今日は容易にBrowserifyで可能です。 Browserifyを使用すると、require()という構文を持つnodejsモジュールを記述し、簡単にブラウザのコードに変換することができます!

彼らはあなたがそれを扱うと言われているzlibを移植したので、依存関係はOKです。

私はこれが将来の読者に役立つことを願っています:

関連する問題