JavaScript Template Literals

Up until now, we only had two ways to write a string in JavaScript – single and double quotes. If we wanted to interpolate a variable with one of these string options, we’d need to break out of the string and concatenate the variable.

As of ES2015, we are able to use Template Literals. These are string literals that allow embedded expressions.

Continue reading “JavaScript Template Literals”

Modern JavaScript: Arrow Functions

New with ES6, we have an additional way to write function expressions in our code – as arrow functions. This new syntax offers 3 main benefits:

  • They are much more concise than regular function expressions/definitions
  • They have implicit returns, which allow us to write single-line expressions (much like we can do with conditionals and the ternary operator)
  • The value of this is lexically bound, meaning that it is not re-bound when you use an arrow function inside of another function – which is very helpful for asynchronous callbacks
Continue reading “Modern JavaScript: Arrow Functions”

Vim Text Completion

I’ve been looking for a good autocomplete plugin for Vim for a while. It seems like the most popular option by far is YouCompleteMe (which I have been using for a while now). While I think YouCompleteMe is a good plugin, I also feel like it’s a bit heavy and seems to need a lot to setup and maintain. I always seem to have issues with the server going down.

Basically, I just wanted a lighter option.

Continue reading “Vim Text Completion”

Intro to the Web Storage API

What is Web Storage and when would you use it?

There are instances where storing data in a users browser can be really helpful. Up until somewhat recently, saving the state of the application locally in the browser via Cookies was the main way to achieve this. Cookies have limitations, however. For example, their max size (4093 bytes) and the fact that they have to me transmitted with every request.

Continue reading “Intro to the Web Storage API”