2014-02

JavaScript time values: dates as milliseconds since 1970-01-01

[2014-02-14] dev, javascript, jslang
This blog post explains how JavaScript dates are stored internally as time values, milliseconds since 1970-01-01.

What are integers in JavaScript?

[2014-02-08] numbers, dev, javascript, jsint, jslang
According to the ECMAScript specification, all numbers in JavaScript are floating-point. Yet, the notion of integer comes up occasionally. This blog post explains what it means.

Video: Fake operator overloading

[2014-02-06] dev, javascript, jslang, video
On 2012-05-31, I held the talk “Fake operator overloading” at Fluent Conference, in San Francisco. The video is now publicly available (go there for a larger version of the video).

2014-01

Repeating strings efficiently

[2014-01-29] bitwise_ops, dev, javascript, jslang
Recently, Michael Ficarra pointed me to an efficient algorithm for repeating a string several times. In this blog post, I explain how it works.

Binary bitwise operators in JavaScript

[2014-01-27] bitwise_ops, numbers, dev, javascript, jsint, jslang
This blog post describes JavaScript’s binary bitwise operators: bitwise And (&), bitwise Or (|), and bitwise Xor (^).

The new operator implemented in JavaScript

[2014-01-19] dev, javascript, jslang
Code snippet – this is roughly how you would implement the new operator in JavaScript:

ECMAScript 6: TC39 meetings, March–November 2013

[2014-01-17] esnext, tc39, dev, javascript
TC39 [1] is the committe that currently plans ECMAScript 6 (code-named ECMAScript.next), the next version of the JavaScript language standard. In this blog post, I’m summarizing the highlights of several meetings that they had in 2013, in March, May, July, September and November. Previous blog posts summarized prior meetings.

This post is made possible by Rick Waldron’s excellent notes of the meetings.

ECMAScript 6: merging objects via Object.assign()

[2014-01-08] esnext, dev, javascript
New version of this blog post: inside “ECMAScript 6: new OOP features besides classes”.

Copying all properties of one object to another one is a common operation in JavaScript. This blog post explains ECMAScript 6’s implementation of it, which is called Object.assign().

Evaluating JavaScript code via eval() and new Function()

[2014-01-05] dev, javascript, jslang
This blog post examines how one can dynamically evaluate code in JavaScript.

Web platform: five technologies to look forward to in 2014

[2014-01-01] dev, webdev, javascript, webcomponents, clientjs, jslang
This blog post describes five technologies that will make 2014 an exciting year for the web platform:
  1. asm.js: near-native performance on the web
  2. ParallelJS: parallelized JavaScript code
  3. ECMAScript 6 (ES6): evolving the language, uniting the community
  4. Web Components: a standard infrastructure for widgets
  5. CSS Grid Layout: native-like GUI layout