Skip to main content


Showing posts with the label reference

parseInt() galore

After the Falsy post, here is another interesting table listing various values as evaluated by parseInt(). Some are quirky indeed :)

Free lunch to anyone who shows me another table that covers parseInt() in such detail :P

ExpressionValueRemarksparseInt("23")23parseInt(" 23")23Leading white space is droppedparseInt("-23")-23parseInt(23)23parseInt(023)19Radix 8 is usedparseInt(0x23)35Radix 16 is usedparseInt("23",4)11Radix 4 is usedparseInt("23",4.99)11Radix is always converted to int32parseInt("23",36)75Radix 36 is usedparseInt("z",36)35Radix 36 is usedparseInt("23",37)NaNMax Radix is 36parseInt("23",1)NaNMin Radix is 2parseInt("23",0)23Radix used is 10parseInt("23",-1)NaNMin Radix is 2parseInt("23",3)2Radix 3 can use only 0,1,2parseInt("023")19Radix defaults to 8parseInt("0x23")35Radix defaults to 16parseInt("023",5)13Radix used is 5parseI…

Falsy JavaScript

In continuation of my previous blog on the basic JavaScript expressions, this blog is about Falsy and Truthy values in JavaScript.

When presented with a non boolean expression instead of a boolean value, JavaScript uses Truthy or Falsy values instead to determine the result. At first glance, this could be confusing and could lead to errors while scripting.

var a = "someval";
var b;
if (a) { // this is a truthy
 // Block is executed
if (b) { // b is undefined and so a falsy
// Block is not executed

The Falsy Values
All expressions, objects and values are Truthy by default. There are exceptions and they are called the Falsy values and are listed below:
  # The empty string; ""
  # null
  # undefined
  # The number 0
  # NaN
  # The boolean false

It gets tricky
If you see the below table, you will note that it gets tricky or rather one should be a little extra careful while dealing with Falsy values.

ExpressionValueFalsy ValuesfalsefalseNaNfalseundefinedfalse0fa…