Live data from Hacker News

The curious case of if-not

marcel.is

1–3 of 3 posts

Re: The curious case of if-not

#2
The two if statements given aren't logically equivalent; an equivalent version of the 2nd one would be:

  if (!(input.command === "foo" && isValid(input))) {
    ...
  }
Which IMHO is the least comprehensible.

You can flip the negation by swapping the if/else blocks, but only if there is an else. Then you also get into questions about whether or not it matters which block is on top.

Re: The curious case of if-not

#3
post #2

The two if statements given aren't logically equivalent; an equivalent version of the 2nd one would be: if (!(input.command === "foo" && isValid(input))) { ... } Which IMHO is the least comprehensible. You can flip the negation by swapping the if/else blocks, but only if there is an else. Then you also get into questions about whether or not it matters which block is on top.

OP here. Yeah, I should have made it clearer, thanks.