Make Your Own AngularJS, Part 1: Scopes And Digest

Posted on by Tero Parviainen

Update: "Build Your Own AngularJS" is now available as an early-access eBook.

Angular is a mature and powerful JavaScript framework. It is also a large framework with many new concepts one needs to grasp before becoming truly effective. As web developers flock to Angular, many of them face the same hurdles. What exactly does the digest do? What are all the different approaches to defining a directive? What's the difference between a service and a provider?

While the Angular documentation is getting very good, and there's an increasing number of third-party resources, there's really no better way to really learn a technology than to take it apart and see what makes it tick.

In this article series, I'm going to build an implementation of AngularJS from the ground up. As I take you through it step by step, you'll gain a deep understanding of exactly how Angular works.

In this first installment of the series we'll see how Angular scopes work and what things like $eval, $digest, and $apply actually do. The dirty-checking logic of Angular may seem somewhat magical, but it really isn't, as you'll see.

Read more →