JavaScript Casting to Number Quiz
Today I was playing with JavaScript again, and as result a small quiz was born. Hope you’ll enjoy.
-
var i; alert(++i);
- Error
- 1
- NaN
- undefined
-
var i = null; alert(++i);
- Error
- 1
- NaN
- undefined
-
var i = {}; alert(++i);
- Error
- 1
- NaN
- undefined
-
var i = ""; alert(++i);
- Error
- 1
- NaN
- undefined
-
var i = "0"; alert(++i);
- Error
- 1
- NaN
- undefined
-
var i = "a"; alert(++i);
- Error
- 1
- NaN
- undefined
-
var i = false; alert(++i);
- Error
- 1
- NaN
- undefined
Answers:
- NaN (undefined + number == NaN)
- 1 (null is casted to 0)
- NaN (object + number == NaN, except nulls)
- 1 (empty string is casted to 0)
- 1 (string “0” is casted to 0)
- NaN (string with not a number is casted to NaN)
- 1 (booleans are casted to numbers: false to 0 and true to 1)