1.3.0 — 2012年1月11日UnderscoreからAMD(RequireJS)サポートを削除しました。 UnderscoreをRequireJSで使用したい場合は、通常のスクリプトとして読み込むか、コピーをラップまたはパッチするか、分岐したバージョンをダウンロードできます。
なぜ彼らはそれをやったのですか?誰か知っている?ほんの数か月前(10月)に追加されたため、AMD(非同期モジュール定義)はsaidであり、CommonJSモジュールよりもはるかに優れているためです。
更新:2013年12月現在、これは再びサポートされています。
Underscoreの開発者は、AMDをサポートすると、AMDに対応していないスクリプトのサポートが中断されると考えていました。 (AMD対応であるが、AMD以外の展開でもそのまま動作するスクリプトを持つことができるため、実際にはそうではありません。
現在、アンダースコアのドロップイン置換があります: Lo-Dash 。これには、アンダースコアにはない他の機能とともに、AMD /非AMDの二重性が含まれます。
このかなり古い質問に追加する必要があると感じました。
バックボーンとアンダースコアの両方がAMDをサポートするようになりました:
議論(ただし、Backboneの議論は、議論のトーンと実際の結果との間に明確な矛盾があるため、少し不可解です):
ES5-shim は、アンダースコアおよびlodashと同じ機能の多くを提供します(array.forEach()、array.map()など)。
ES5-shimはAMDをネイティブでサポートは、アンダースコアやlodashとは異なり、ブラウザーがおそらく既に提供しているものの余分なコピーを追加しません。むしろ、ネイティブのES5機能を古いブラウザーに追加します。
IE8やその他の古いブラウザーが機能しなくなった場合、lodashやアンダースコアの場合のようにコードを移植することなく、ES5-shim依存関係を単純に削除できます。