You Don't Know JS to Prepare For Ionic Development

I’m an upcoming developer who seeks to learn how to develop my own applications using Ionic. I have previous programming experience and know basic Javascript, but after looking at some Ionic tutorials I figured it would be worth for me to put more effort into learning the language in depth, so I picked up the book “You Don’t Know JS”. This book is said to focus on Javascript, and Javascript only and focus less on the interfaces that the browser uses to connect with Javascript for example. Is this the right way to go if I’m preparing myself to learn Angular and develop with Ionic or would a book like “Head First” that incorporates Javascript AND Html more explicitly be more suitable?

Thankful for any advice :slight_smile:

It surely doesn’t hurt.

Your main task will be learning Angular (2+) next, as Ionic is based on it and all the Ionic code is basically Angular code.


I think you should learn js fundamentals such as conditionals, loops, operators and things like that, then learn TS fundamentals and after that you may understand angular and ionic as well…

1 Like

Do not go for that book at this stage. It deals with pretty advanced stuff which, IMHO, won’t help you as much as learning TypeScript would right now. If you really want to, go for the Head First series and then grab a book on TypeScript.

FYI, when developing ionic apps you’d be writing code in typescript mostly, very rarely in javascript, if at all. But as @Sujan12 said, it won’t hurt to learn. Just that, postpone it for later.


I agree with this. I’d say the priority is to learn TypeScript, Angular and the basics of rxjs 5. I actually try to keep the Javascript part of things super simple, and lean on Angular and Observables to do the hard work for me.

1 Like

I just realized that there are two Head First books concerning Javascript: Head First HTML5 Programming (more DOM, HTML centered) and Head First Javascript (more like You don’t know JS I suppose). Which one would be preferable in this case?

I don’t think either of those books will be of much use to you, and the one focusing on direct DOM access will arguably be actively harmful, because you should be doing your best to avoid that completely in an Angular app.

I would instead use the Tour of Heroes as a main starting point, and then looking for additional reference material to shore up concepts you encounter there that are unclear.


If you ask me and given that you’ve previous knowledge of web programming, I’d suggest you to read neither of them either. As far as I can guess, you should have a pretty good knowledge of basic html, css and javascript and that’ll do for now, you don’t need to waste more time. Or perhaps if you think you are not that competent yet, then you can from the point of view of taking a refresher, read the “Head First HTML5”. But do not concern yourself too much with third party tools/frameworks like jquery, concentrate on basic javascript, html and css only. A basic knowledge of OOP concepts would be very useful and necessary too.

There are a lot more essential concepts/technologies to learn if you want to be up and running with ionic development any soon. They are daunting all right but don’t be unnerved, it all boils down to how much you understand their underpinnings and how they all connect. The rest is basically coding, which you already know I believe. So over and above the knowledge of html5, css3 and javascript, here is a list of essential concepts/technologies/tools you should learn about right now:

Ionic 2+
The Ionic CLI
Angular 2+

And, give special importance to concepts like Modules, Annotations, Observables, Promises, Dependency Injection etc. when learning typescript.

Don’t worry too much though if these look daunting as I said, with some time and actual practice, all the concepts will sink in. Start with creating the sample ionic projects even if you don’t understand them yet. Try to learn the CLI tool. Then slowly and steadily, you’ll be up and running with ionic!

What you don’t need to learn (rather should avoid): Any version lesser than Ionic 2 and Angular 2.

A Bird’s Eye View might help you too, just an attempt of mine :+1: All the best!

1 Like