Primitive to primitive conversion table

suggest change

Value Converted To String Converted To Number Converted To Boolean
undefinded “undefined” NaN No
null “null” 0 No
true “true” 1 No
false “false” 0 No
NaN “NaN”   No
“” empty string   0 No
” “   0 Yes
“2.4” (numeric)   2.4 Yes
“test” (non numeric   NaN Yes
“0”   0 Yes
“1”   1 Yes
-0 “0”   No
0 “0”   No
1 “1”   Yes
Infinity “Infinity”   Yes
-Infinity “-Infinity”   Yes
[] “” 0 Yes
[3] “3” 3 Yes
[‘a’] “a” NaN Yes
[‘a’,’b’] “a,b” NaN Yes
{ } “[object Object]” NaN Yes
function(){} “function(){}” NaN Yes

Bold values highlight conversion that programmers may find surprising

To convert explicitly values you can use String() Number() Boolean()

Feedback about page:

Feedback:
Optional: your email if you want me to get back to you:



Table Of Contents