4 ms·
If you just make sure to always use === then this is exactly what happens. You can use tools like jslint to warn you if you accidentally use ==
by jordanwallwork 11y ago
If you just make sure to always use === then this is exactly what happens. You can use tools like jslint to warn you if you accidentally use ==
- mkolosick 11y agoNot quite though. I had a bug with Javascript where I was reading in a number and forgot to parse it to a float. I ended up doing an addition with that value, which later got used as a float again. So I had 1 + "10" turn to 110 when I tried to use it. No == or === anywhere.
- jordanwallwork 11y agoI was only really referring to automatic type conversion for comparisons. That said, the example you gave sounds like the opposite, where you wanted it to do some auto-conversion and you're disappointed that it didn't? If I did 1 + "10" I don't think I'd want it to return 11!
- afandian 11y agoI'd want it to throw some kind of cast exception, personally, not try and do what it thinks I want. (I'm not the GP)
- Nadya 11y agoIt did convert the value. It converted the 1 to a string and added "10" to the end of it, resulting in "110" which then was converted to a float and used. The error in this case would be forgetting Javascript's rules of implicit conversion. Adding a float to a string results in a string.
- IshKebab 11y agoThat just fixes one of javascript's weirdnesses. There are many many others.