Jon this is "Subtle" but the context surrounds n makes sure that it is only in one of 3 states. null, undefined, or a non falsy state ( For example it might be set to an enum value, but generally it is something that is strictly controlled). And since that's the case ( As only the programmer would know) it's OK to use the ternary operator to test for the falsy values null or undefined. But I love your approach as well. I'll add it to the article.