It works with everything except of course for falsy values
myThing.number = someNumberThatShouldNotBeEqualToZero
if (myThing.number) {
// do something very important with that number that should not be equal to zero
}
// This can fail at anytime without warning
So you’ve got to be extra careful with that logic when you’re dealing with numbers.
I am not saying it’s wrong though. I’m saying it’s often annoying.
Falsy zero? What’s wrong with that, 1 is true and 0 is false. I thought that was standard logic?
in javascript a property is truthy if it exists
myThing.property = "some string" if (myThing.property) { // true // do something }
It works with everything except of course for falsy values
myThing.number = someNumberThatShouldNotBeEqualToZero if (myThing.number) { // do something very important with that number that should not be equal to zero } // This can fail at anytime without warning
So you’ve got to be extra careful with that logic when you’re dealing with numbers.
I am not saying it’s wrong though. I’m saying it’s often annoying.
ah ok , I think I write this a bit more verbose when using other languages, instead of
if(thing) { stuff; }
I do
if(thing != null) { stuff; }
so checking for numbers being truthy & existing didn’t seem like an issue