Hey for those who think they really know javascript, what do you think the following code will do:
var foo = 1; function bar() { if(!foo) { var foo = 10; } console.log(foo); } bar();
Then, run the following
http://jsfiddle.net/dodozhang21/NaLxn/
Were you expecting 1? so WTF?
Look up javascript hoisting 🙂
That’s why jslint says to always define variables at the beginning of a function. What do you think console.log( 20.61 – .1 ) outputs?
yup. all floating point math has rounding issues tho not really a unique problem to javascript