background preloader

Javascript

Facebook Twitter

Interviews

ES5 to ESNext — here’s every feature added to JavaScript since 2015. I wrote this article to help you move from pre-ES6 knowledge of JavaScript and get you quickly up to speed with the most recent advancements of the language. JavaScript today is in the privileged position to be the only language that can run natively in the browser, and is highly integrated and optimized for that. The future of JavaScript is going to be brilliant. Keeping up with the changes shouldn’t be harder than it already is, and my goal here is to give you a quick yet comprehensive overview of the new stuff available to us. Click here to get a PDF / ePub / Mobi version of this post to read offline Table of Contents Introduction to ECMAScript ESNext Introduction to ECMAScript Whenever you read about JavaScript you’ll inevitably see one of these terms: ES3, ES5, ES6, ES7, ES8, ES2015, ES2016, ES2017, ECMAScript 2017, ECMAScript 2016, ECMAScript 2015… what do they mean?

They are all referring to a standard, called ECMAScript. Why this weird name? Current ECMAScript version What is TC39 to or Set. About this guide - Learn JS Data. ReactiveX. What I learned from writing six functions that all did the same thing. The Two Pillars of JavaScript — JavaScript Scene. Before we get into this, allow me to introduce myself — you’re probably going to wonder who I think I am before this is over. I’m Eric Elliott, author of “Programming JavaScript Applications” (O’Reilly), host of the feature-length documentary film-in-production, “Programming Literacy”, and creator of the “Learn JavaScript with Eric Elliott” series of online JavaScript courses.

I have contributed to software experiences for Adobe Systems, Zumba Fitness, The Wall Street Journal, ESPN, BBC, and top recording artists including Usher, Frank Ocean, Metallica, and many more. Once Upon a Time I was trapped in the darkness. I was blind — shuffling about, bumping into things, breaking things, and generally making an unholy mess of everything I touched. In the 90's, I was programming in C++, Delphi, and Java and writing 3D plugins for the software suite that eventually became Maya (used by lots of major motion picture studios to make summer blockbuster movies).

Then it happened: The internet took off. The Single Biggest Mistake Programmers Make Every Day — JavaScript Scene. The Single Biggest Mistake Programmers Make Every Day I recently taught a master class at a conference. The first half of the day I stood in front of the class and talked about The Two Pillars of JavaScript: Prototypal OO and functional programming. For the second half, I had the students team up and collaborate on an app project. The assignment was to keep in mind a few key points from the lessons: Don’t export any classes.

If you need to instantiate anything, use a factory function.Use pure functions wherever you can. A pure function does not mutate anything outside itself. After beginning the practice assignment, I spent the rest of the day walking around the room and helping the teams progress. I got some great responses. And my personal favorite: Brendan Eich seemed to like it, too: I believe the single biggest mistake that every programmer makes from time to time is overcomplicating things. Keep it Stupid Simple KISS — Keep It Simple, Stupid What is Simple Code? One thing is simple. The long road to Async/Await in JavaScript | Thomas Hunter II. This is a comparison of different methods for performing asynchronous control flow in JavaScript, specifically Callbacks, Promises, Generators / Yields (ES6), and Async / Await (ES7). To follow along be sure you understand how the JavaScript Event Loop works and what it means when code is executed synchronously in the current stack, or shoved into the queue to be executed asynchronously in the future.

In the following contrived examples, publishLevel() is our main application code (perhaps something we’d see in a Controller), whereas getUser(), canCreate(), and saveLevel() are functions nested deeper in our application (perhaps in our Models). Compatibility: Keep in mind that anything marked as ES6 will require Node.js >= 0.12 with the --harmony flag enabled, or any version of io.js >= 1.0. Browser support for ES6 is anything but spectacular and you’ll likely need to transpile. Stage 0: Synchronous Code This of course is not Asynchronous code but it does show us eloquent syntax.

Tl;dr. Coderpower. JavaScript Best Practices. 7 Essential JavaScript Functions. I remember the early days of JavaScript where you needed a simple function for just about everything because the browser vendors implemented features differently, and not just edge features, basic features, like addEventListener and attachEvent. Times have changed but there are still a few functions each developer should have in their arsenal, for performance for functional ease purposes. debounce The debounce function can be a game-changer when it comes to event-fueled performance. If you aren't using a debouncing function with a scroll, resize, key* event, you're probably doing it wrong.

Here's a debounce function to keep your code efficient: function debounce(func, wait, immediate) { var timeout; return function() { var context = this, args = arguments; var later = function() { timeout = null; if (! The debounce function will not allow a callback to be used more than once per given time frame. Poll Polling has long been useful on the web and will continue to be in the future! Once isNative.

Functional

React. Vue.js. Meteor. Backbone.js | Marionette. Nodejs. Tests. Angular. JSDB.io - The Database of JavaScript Libraries. JavaScript for Line of Business Applications. Visualization. LocalStorage, sessionStorage. Templating. Ember. Garbage collector, memory leaks. Websockets, PubSub, SSE, ... jQuery Plugin Boilerplate. Get the latest updates on this jQuery plugin via RSS A boilerplate for jump-starting jQuery plugins development. Contains lots of comments to help you get going easily. It implements public and private methods, as well as public and private properties making it the ideal candidate for when building both simple and complex jQuery plugins. It does not adhere to the suggestions made by the jQuery documentation regarding Plugins/Authoring. The jQuery Plugin Boilerplate took some inspiration from Doug Neiner‘s Starter.

With comments: Without comments: Usage Requirements jQuery 1.5.2+ It’s the only version I’ve tested the boilerplate with; it may be applicable to earlier versions, too. 54 responses to “jQuery Plugin Boilerplate, revisited” 30+ New Resources, Tools & Apps For Kick-Ass Web Developers. If you are looking for a tool that will check your Javascript or validate your freshly made CSS, or give you an creative advantage with the newest jquery plugins, or do you need the help to create an image sprite, or a new HTML5 Canvas library, or even learning a new CSS framework.

Well today’s post is just for you as we look into what the newest tools, resources and apps that been released in the web development industry. Javascript & jQuery Plugins TimelineJS TimelineJS can pull in media from different sources. CanJS CanJS is an MIT-licensed, client-side, JavaScript framework that makes building rich web applications easy.

Can.Construct – inheritable constructor functionscan.Observe – key-value bindingcan.Model – observes connected to a RESTful JSON interfacecan.view – template loading, caching, renderingcan.EJS – live binding templatescan.Control – declarative event bindingscan.route – back button and bookmarking support Fixie.js foresight.js heatmap.js sigma.js jPages keymaster.js *Beta Dynamo.

Mobile friendly

Frameworks. 20 JavaScript Frameworks Worth Checking Out. The number of web applications being created and used has grown rapidly since the new millenium. And importantly, so has the sheer complexity of them -- specially on the front end. No more static pages, no sir! You have a ton of sections each interacting with each other and the server and yes, it's as complicated as it sounds and just as hard to pull off. Today, I'd like to talk about a few choice JavaScript frameworks that aim to simplify front-end application development. If you think jQuery is the answer, you lose a cookie and get an F grade! Creating responsive, fluid, and maintainable interfaces for web apps isn't as easy as one would imagine -- there is data to be sent back to the server and the results parsed, data stores to be updated, views to be re-rendered and so much else that needs to be done in the background.

Sure, a few of these may be a little old but their code bases have lots of lessons to teach. Related links: Introduction to Sammy.js Github Repo Google Code.