I am newbie with client-side JavaScript. In one web project, I found about angularjs and use some basic on this. Should I learn jQuery or just use Angularjs for other project?
-
They are complementary, you can use both. – str Aug 24 '13 at 08:38
-
4For a more comprehensive answer regarding the use of Angular and its delicate relationship with jQuery, see [here](http://stackoverflow.com/questions/14994391/how-do-i-think-in-angularjs-if-i-have-a-jquery-background). Pay special attention to the summary of the accepted answer. – MasterAM Aug 24 '13 at 08:44
3 Answers
While learning AngularJS it is best not to include jQuery. Please note that I'm talking about the learning process here, not saying that you shouldn't use jQuery in your final project.
The philosophies and approaches of both libraries to UI construction (declarative AngularJS and imperative jQuery) are so different that you need to somehow unlearn many of the jQuery habits to get most of the AngularJS.
Leaving out jQuery during the learning process will "force" you to embrace the AngularJS way. When you've got full grasp of AngularJS you can start introducing jQuery in directives only.
For the broader discussion of the topic see "Thinking in AngularJS" if I have a jQuery background? but in short:
Start learning AngularJS without including jQuery.

- 1
- 1

- 117,202
- 60
- 326
- 286
You can get along fine with angular.js without using jQuery if you stick to it's core features. If you want to include third party libraries in your project most of them use jQuery nowadays so you will get in touch with it one way or another.
Note that this situation "improves" as the angular folks are constantly porting those libraries to angular. E.g. bootstrap is ported in the angular-ui bootstrap project to native angular.js (http://angular-ui.github.io/bootstrap/).
One remaining issue is, that jQuery takes a lot of effort in supporting older browser version which angular.js does not. So while original bootstrap supports ie8 angular-ui's team decided not to.
My advice would be: start with plain angular.js and if the need for third party components arises decide if it's worth for you to include additional complexity with jQuery.
EDIT: Here is described how angular interacts with jQuery: AngularJS DOM selector
Angular can use jQuery if it's present in your app when the application is being bootstrapped. If jQuery is not present in your script path, Angular falls back to its own implementation of the subset of jQuery that we call jQLite.

- 661
- 6
- 17