Open strout opened 3 years ago
It would also be nice to have an actual implementation of JS's ==
and !=
. The documentation got my hopes up for a second :)
Hello @strout Can you please elaborate more on the issue (e.g. example, etc.) because I do not think I get it right? If this is bug what is wrong with the behavior?
No problem. The behavior of IsTruthy/IsFalsy is fine, and exactly what I expect. It's just the doc comments don't match the behavior.
The doc comment for IsTruthy is:
Implementation of JS's
==
But that's not what IsTruthy
does. ==
takes two arguments and checks if they're equal, but IsTruthy
takes one argument and checks if it's truthy.
Maybe a better wording would be something like
Implementation of JS's Boolean type conversion
This is a lot of conversation for what could’ve been a PR on the readme 😄
Indeed! I haven't had the time yet but plan on making one.
@strout Did you have time yet to create a PR on the documentation?
Describe the bug
IsTruthy
's doc comment says it implements JS==
andIsFalsy
's says it implements JS's!=
.Expected behavior:
I'd expect something mentioning JS coercion to boolean for
IsTruthy
and maybe the!
operator forIsFalsy
. Consider a link to MDN articles on Truthy/Falsy, and maybe call out any surprising edge cases (.NET types that aren't coerced, if they're intentionally omitted).