> Exactly Brendan, I could not agree more and this is my No. 1 pitfall about 
> JS: developers often not doing real work complaining about stuff that 
> developers doing real work don't even care about or never ever had to worry 
> about.

I don’t follow. Who are these people not doing “real work”? And I don’t think 
discussing the language qualifies as complaining.

> In any case they can learn and understand the feature/problem using the 
> feature when needed, avoiding its weakness when necessary.
> 
> About falsy and truthy, null and undefined, who cares ... seriously, and to 
> be honest, that's not a pitfall, is rather a feature when needed as it is for 
> all other scripting languages as long as you know what you are doing ... and 
> no programming language will save you if you don't know what you are doing 
> and it's your duty, as developer, to understand the language you are using if 
> that's your job.

“Warts” is probably a better term than “pitfalls”.

> Again, about falsy ... if I see a glass empty, it does not mean I used a 
> microscope to understand no water is left in the whole glass surface ... I 
> just consider that empty and I add water on top.
> 
> Engineers have the tendency to over complicate even simple tasks as the one 
> I've just described ... what is the benefit? What is the result? That the day 
> falsy values in JS will disappear libraries authors will implement an 
> isFalsy(value) function/method and use it 90% of the time regretting the 
> trick with == disappeared ... isn't it ;-)

What is the trick with ==? Note that == does not respect truthiness or 
falsiness:

    > 2 == true
    false
    > 2 == false
    false

    > '2' == true
    false
    > '2' == false
    false


-- 
Dr. Axel Rauschmayer
a...@rauschma.de

home: rauschma.de
twitter: twitter.com/rauschma
blog: 2ality.com

_______________________________________________
es-discuss mailing list
es-discuss@mozilla.org
https://mail.mozilla.org/listinfo/es-discuss

Reply via email to