Why I hate Javascript


Javascript is one of the most powerful langauge and has he change the people use computers today, but this post doesn't talk about positive sides of java script.


  1. "NaN" == "NaN" is false. Wow, why was such crap needed, its a programming languages not some movie.  I cant visualize a scenario where such stupid check would help me in product code.
  2. undefined, null and the stories. bullshit.
    • There are two different data types 'undefined' and 'null'
    • Variable that are of type 'undefined' can have only one value and that's 'undefined'
      (wow , why do we need such data types that can have only one value) 
    • Variable that are of type 'null' can have only one value and that's 'null'
      (wow , why do we need such data types that can have only one value) 
    • undefined == null is true
      ( wow sirji, they are different but still same, why? because one operator == converts one to other ) 
    • value undefined is derivative of the value null 
    • 'undefined' is value also and type also :)
    • 'null' is value also type also :)
       People coming from high level programming languages would certainly find it unconventional. I mean if          you just had one value( not type) 'null' and all uninitialized variable were by default 'null' that was 
       enough.  Now with all of this combination and complication,  I need to ensure that not I understand this
       extra undesired stuff but all other engineers working with me also do.