A pet squirrel

Have you had your daily dose of cute already? If not, then look no further. The picture below is one of several.


parseInt() doesn’t always correctly convert to integer

In JavaScript, all numbers are floating point. Integers are floating point numbers without a fraction. Converting a number n to an integer means finding the integer that is “closest” to n (where “closest” is a matter of definition). You might think that parseInt() performs this task, but it doesn’t. At least, not always.


JavaScripts 12 größte Fallgruben

[Dieser Blogpost ist die Langversion eines Artikels im CHIP Web Design 2013.]

JavaScript ist eigentlich eine recht kompakte Sprache. Wenn es nur nicht all diese Fallgruben gäbe... Dieser Artikel erklärt die 12 größten und wie man am besten mit ihnen umgeht. Zur Lektüre werden grundlegende JavaScript-Kenntnisse vorausgesetzt. Wir halten uns an die aktuelle Version von JavaScript, ECMAScript 5.


Chromebooks and netbooks

The best-selling laptop on Amazon? A Chromebook [1]! Quoting “Amazon's top selling laptop doesn't run Windows or Mac OS, it runs Linux” (by Steven J. Vaughan-Nichols for ZDNet):
So, what, according to Amazon, in this winter of Windows 8 discontent has been the best selling laptop? It's Samsung's ARM-powered, Linux-based Chromebook.


Web development: 2012 & forward

Functionn is a blog on open source web development. Today, they published an interview with me and several other people (including DailyJS’s Alex R. Young) covering various web-development-related topics. They asked the following questions:


Categorizing values in JavaScript

This post examines four ways in which values can be categorized in JavaScript: via the hidden property [[Class]], via the typeof operator, via the instanceof operator and via the function Array.isArray(). We’ll also look at the prototype objects of built-in constructors, which produce unexpected categorization results.


Responsive web design versus adaptive web design

This blog post looks at the difference between responsive web design and adaptive web design. Before we can get started, we need to define another concept: progressive enhancement.


Graph search: Facebook as a database

Today, Facebook introduced a new feature called “graph search”. This blog post explains what it is. It is based on the Verge’s liveblog of the event.


ECMAScript.next: TC39’s November 2012 meeting

From November 27-29, 2012, the Ecma Technical Committee 39 (TC39, [1]) had another meeting, where decisions were made about ECMAScript.next (the code name for ECMAScript 6 [1]). This blog post summarizes and explains the highlights. It is based on Rick Waldrons excellent notes that he put up on GitHub. There is also a list of all 2ality posts on TC39 meetings.


What temperature has the same degrees in Celsius and Fahrenheit?

Idle question of the day: What temperature has the same degrees in Celsius and Fahrenheit?


ECMAScript.next: array comprehensions and generator comprehensions

Update 2014-08-04: Comprehensions won’t be in ECMAScript 6. There’s a chance that an updated version of them will be in ECMAScript 7 or later.

ECMAScript.next will have two kinds of comprehensions: array comprehensions and generator comprehensions. They allow one to quickly assemble an array or a sequence of elements. Comprehensions exist in many programming languages, for example: CoffeeScript, Python, Haskell, Clojure.


Brace styles and JavaScript

In languages whose syntax is derived from C (e.g.: C ← C++ ← Java ← JavaScript), two brace styles are most common: Allman style and 1TBS.


JavaScript terminology: the two prototypes

In JavaScript, there is an unfortunate overloading of the term “prototype”.