2014年7月14日
Q. AngularJSとjQueryの違いは何でしょうか?
(2012-10-31)by Stack Overflow
本記事は、原著者の許諾のもとに翻訳・掲載しております。
私が知っているJavaScriptライブラリといえばjQueryです。
しかし、新規プロジェクトのデフォルトのライブラリとして、プログラマ仲間がAngularJSを導入しました。
私はAngularJSについての知識が全くありません。jQueryと何が違うのでしょうか。
jQueryのタスクとして実行された関数群は、AngularJSでも使用できますか?
asked by user825904
Answer(s)
jQueryはDOMのエレメントを操作・管理するための優れたツールです。 WebアプリケーションのようなデータのCRUDがなく、DOMのエレメント操作についてのみ言えば、 jQueryは最高のツールの一つです(AngularJSでも同様の操作が可能です)。
AngularJSは以下の特徴を持つフレームワークです。
- 双方向データバインディング
- MVWパターン(MVCの派生パターン)
- テンプレートとしてのHTML
- カスタムディレクティブ(再利用可能なコンポーネントと独自のマークアップ)
- REST志向
- ディープリンク(動的ページにリンクを設定)
- フォームバリデーション
- サーバとの連携
- ローカライゼーション
- 依存性注入(DI)
- 充実したテスト環境(ユニットテスト、e2eテスト)
このプレゼンテーション資料や、
よくできた入門サイト
もチェックしてみてください。
公式の開発者ガイドを一読することもお忘れなく。
または、こういったすばらしいチュートリアル映像などで学習してください。
jQueryはAngularJSと問題なく併用することができます。
jQueryは優れたツールであると言いましたが、AngularJS は内部にjQuery liteを組み込んでいます。
FAQより
Q. AngularJSでjQueryライブラリを使用できますか?
A. はい。AngularJS起動時にjQueryがアプリケーション内にあれば利用可能です。 jQueryがスクリプトのパスに無い場合、AngularはjQLiteと呼ばれるAngularJS組み込みであるjQueryのサブセットへ委譲します。
ただし、jQueryによってDOMを変更する場合は、AngularJSのコントローラ内ではなく、ディレクティブ内で行ってください。
Answerer : maxisam
株式会社リクルート プロダクト統括本部 プロダクト開発統括室 グループマネジャー 株式会社ニジボックス デベロップメント室 室長 Node.js 日本ユーザーグループ代表
- Twitter: @yosuke_furukawa
- Github: yosuke-furukawa