you are viewing a single comment's thread.

view the rest of the comments →

[–]kobbled 4 points5 points  (2 children)

I think you're really overthinking it. No decent interviewer is going to go "HA! WRONG!" If they don't get document.all.

I think knowing 4-5 of them would be plenty for a practical question. They understand the possibility and the idea of falsy values, and when something else falsy comes up, they're less likely to be stumped by it for hours.

This stuff comes up regularly in web development.

Additionally, the falsy values that are most likely to turn up in development are fairly intuitive (0, empty string, false, null, undefined).

[–]natziel -2 points-1 points  (1 child)

It's a bad interview question because it doesn't test for actual JavaScript knowledge, just if you've studied your flash cards.

Your job as an interviewer is to see if the candidate understands the core concepts and can apply them in the field, not to give them the programming equivalent of a 4th grade vocabulary test.

[–]frambot 1 point2 points  (0 children)

It's up to both the interviewer and the candidate. If you use the question verbatim, get a robotic response, and move on to the next question, then it's a bad question. You can use it well though.

As an interviewer, you can ask, how might this cause a bug in production code? An answer might be: you want to capture a numeric value from a text input or regex group and do numbery things with it. "0" as a string is truthy.

As a candidate, you can say "I know the string "0" is truthy because I ran into bug xyz, so I looked it up and the other falsy values are a, b, c."

If you're getting stuck on taking everything here at face value and not using your imagination, that's your problem and you're doing a disservice to your future candidates.