Advanced Javascript

In only three hours you will learn enough javascript to transform from a Junior JS Dev into a Senior JS Guru
4.8 (531 ratings)
Instead of using a simple lifetime average, Udemy calculates a
course's star rating by considering a number of different factors
such as the number of ratings, the age of ratings, and the
likelihood of fraudulent ratings.
2,850 students enrolled
$19
$200
90% off
Take This Course
  • Lectures 26
  • Length 3.5 hours
  • Skill Level Intermediate Level
  • Languages English
  • Includes Lifetime access
    30 day money back guarantee!
    Available on iOS and Android
    Certificate of Completion
Wishlisted Wishlist

How taking a course works

Discover

Find online courses made by experts from around the world.

Learn

Take your courses with you and learn anywhere, anytime.

Master

Learn and practice real-world skills and achieve your goals.

About This Course

Published 11/2015 English

Course Description

In only three hours you will learn enough javascript to transform from a junior javascript developer into a senior javascript guru.

You will dramatically improve your chances of getting past a technical interview, landing that dream job and earning more money.

If you are like me you learnt Javascript by just muddling along, seeing what works and learning a thing or two everyday.

However without a grasp of the deeper fundamentals you will hit quite a few head scratch-y issues, introduce bugs, find it hard to read and understand framework and library code and won’t be considered a senior developer.

This unique course teaches you advanced javascript knowledge through a series of 20 interview questions, with regular quiz's on the way through to cement your knowledge.

***This course covers ES5 version of javascript, the only officially supported version in all browsers***

What are you going to learn?

  • Types & Equality: The different types in JS and how to check if two values are really equal?
  • Scopes: The different scopes a variable can be declared in and how to manipulate those scopes.
  • Object Orientation: How to perform OO in Javascript with both the Prototype Pattern and the Pseudo-Classical/Constructor Pattern.
  • Advanced topics in Networking such as CORS and JSONP.
  • Advanced topics in Event Handling such as the different event phases.

Why an interview format?

I find that it's only when i'm facing an upcoming interview that I get into gear and really make sure I have a deep understanding of what I claim to know.

I might know the best practice for how to solve a problem, but do I know why?

Javascript interviews are designed to dig deeper into your knowledge of a subject, see if you are just mimicking what you have read or if you have a proper understanding.

Also it's FUN, what's more satisfying than learning something, then passing a test!

What are the requirements?

  • A basic understanding of Javascript (ES5)

What am I going to get from this course?

  • Impress interviewers with knowledge about fundamental javascript features
  • Confidently Interview other Javascript candidates
  • Pass stage one javascript telephone interviews

What is the target audience?

  • Any javascript developer looking to change jobs and isn't looking forward to the interviews
  • Devs who have not done javascript in a while, are a bit rusty, and just want to freshen up on the essentials.
  • Both experienced and novice developers
  • Just about to enter the job market after a career change
  • New grads coming out of university

What you get with this course?

Not for you? No problem.
30 day money back guarantee.

Forever yours.
Lifetime access.

Learn on the go.
Desktop, iOS and Android.

Get rewarded.
Certificate of completion.

Curriculum

Section 1: Introduction
Welcome
Preview
04:33
How to edit and run code in Chrome?
Preview
01:37
Section 2: Basics
1. What is "use strict" and what does it do?
Preview
09:49
2. Does javascript pass variables by reference or by value?
Preview
04:58
Quiz 1
3 questions
Section 3: Types & Equality
3. What are the different types in javascript?
Preview
09:27
4. What is the difference between == and ===?
06:37
5. What is NaN and how can we check for it?
05:25
Quiz 2
4 questions
Section 4: Scopes
6. What are the different scopes in javascript?
03:56
7. What is variable hoisting?
04:41
8. What is the scope chain?
04:08
9. What is an IIFE and why might you use it?
06:02
10. What are function closures?
12:09
Quizz 3
10 questions
Quick Question
02:06
Section 5: Object Orientation
11. What does the this keyword mean?
Preview
13:11
12. What do the functions call, bind and apply do?
20:19
13. What is the prototype chain?
11:41
14. What is the difference between prototypal and classical inheritance?
03:07
Quiz 4
10 questions
15. What is the Constructor OO pattern? (part 1)
19:46
15. What is the Constructor OO pattern? (part 2)
12:22
16. What is the Prototype OO pattern?
15:50
Quiz 5
7 questions
Section 6: Networking
17:55

http://www.html5rocks.com/en/tutorials/cors/

18. What is JSONP?
11:50
Quiz 6
5 questions
Section 7: Events
19. What is the difference between event capturing and bubbling?
08:13
20. What is the difference between stopPropagation and preventDefault?
05:13
Quiz 7
5 questions
Section 8: Bonus
Article


Bonus Lecture
Article

Students Who Viewed This Course Also Viewed

  • Loading
  • Loading
  • Loading

Instructor Biography

Asim Hussain, Full Stack Web & Mobile Developer

Over 15 years experience working for clients such as the European Space Agency and Google.

Wrote my first program in 1988, my first website in 1996, earned a 1st Class Degree in Computer Science in 2000 and now 15 years later I own a digital agency in London called Bubblegum specialising in building complex web & mobile applications in AngularJS/Node/Django and IonicFramework.

As well as building applications for awesome clients word-wide, through Udemy i'm now following my dream of teaching other passionate developers like myself what I know through my company CodeCraft.

# What do I believe?

- I believe as a developer at it's heart, your job is to make the lives of other people more productive, that's what computing is all about.

- So if you yourself are not 100% focussed on making your own development as productive as possible then it doesn't bode well for your clients.

# What are my values?

- I'm 100% focused on practical development skills.

- I don't waste peoples time.

- I value my time and I value yours.

- I'm driven to be the most productive developer I can possibly be. I don't get caught up in philosophical debates.

- I value shipping “correct" functionality as fast as possible for myself and my clients.

If those are your values as well them you will love my courses.

If you want to sip your skinny decaf soya latte whilst discussing the pros and cons of different naming conventions for 3 hours then look somewhere else, if you want to learn how to ship functionality as fast as possible for yourself and your clients, these courses are for you.

Ready to start learning?
Take This Course