Since the old days of static HTML, the web has grown uncontrollably to accomodate numerous features and ideas that were back then considered to be completely impossible.
It gave developers move control over their webpages, whereby they could make decisions to modify their pages, and execute procedures on actions a user took.
With the advent of the HTML DOM and Events APIs, the language became even more practical in accomplishing these tasks, and hence, extensively utilised thorughout the web.
Newer and newer features continued to trickle into the scripting language and make it even more powerful amongst other programming languages and more popular amongst web developers.
A real blaster to this effect of popularity was the ECMAScript 6 specification.
It won many hearts!
It's what makes the language behave the same way, be it used anywhere - on browsers or servers.
Well, frankly speaking, it's not just detailed - it's exhaustive!
As an example, the HTML DOM API is not a part of ECMAScript - this is because it's an API defined by web browsers.
Assuming you've understood what ECMAScript actually is, the ECMA committee has been releasing, and is still in the process of drafting, new specifications of the language.
Each specification has improved the language in one way or the other, but by far the real spurt to this improvement has come from ECMAScript 6, also known as ECMAScript 2015, or ES6.
The list is endless - so much that you can find numerous books out there teaching only ES6!
We now have functionalites to read user-selected files, display their content on the go, handle asynchronous operations more fluidly, and work with binary objects.
The modern language enables us to utilise resources more efficiently like by using intersection observers to monitor appearance of elements into the viewport, all asynchronously; the animations API to consider inactivity and slow down browser repainting accordingly and so on.
Not only this but we also get the extended functionality of iterators and generators to ease the idea of iteration - in fact, to give it more power and capability.
Promises are what give strength and simplicity to the previous callback style of executing asynchronous code.
Buffers and typed arrays are also available at our dispense to store and process binary numbers in raw memory. This is quite a useful thing to have if a developer wants to alter the binary content of a given file.
You may be surprised to know that the story doesn't end here!
With ECMAScript 6, we now have an elegant syntax to perform certain operation previously not possible without spanning multiple lines of code.
How complex did this sound?
This course is specially crafted to address this concern.
So are you ready to embark on the journey to further solidy your skills on the world's most popular programming language?