Contact Info

(for those who care)

Instant Gratification   



Tue, 17 Jul 2007

How does JavaScript Suck?

Let me count the ways:

>>> 1 ? "yes" : "no"
"yes"

>>> 0 ? "yes" : "no"
"no"

>>> "1" ? "yes" : "no"
"yes"

>>> "0" ? "yes" : "no"
"yes"

>>> Number("1") ? "yes" : "no"
"yes"

>>> Number("0") ? "yes" : "no"
"no"

>>> Number("true") ? "yes" : "no"
"no"

function DoWhatIMean( pString )
{
   if ( typeof pString === 'string' )
   {
      return pString.toLowerCase() == "true" ?
         true : Number(pString) ? true : false
   }
   else
   {
      return Number(pString) ? true : false
   }
}

>>> DoWhatIMean( "true" ) ? "yes" : "no"
"yes"

>>> DoWhatIMean( "false" ) ? "yes" : "no"
"no"

Welcome to 2007.

Note, I even originally had two rookie mistakes in “DoWhatIMean” - did not “*.toLowerCase()” it, and also did not check to see if it was a string first. Ugh.

13:25 CST | category / entries
permanent link | comments?

Like what you just read? Subscribe to a syndicated feed of my weblog, brought to you by the wonders of RSS.



Thanks for Visiting!