If you define APIs, you usually discuss names and types a lot. One of these discussions brought up that one of my colleagues' dislike of optional boolean properties - and there's also a good reason for it, because undefined and false are coerced to the same value, which can lead to confusion.
I personally value the developer experience of having sensible defaults whenever possible over the possible misunderstanding of false
and undefined
.
Any other advantages and disadvantages I have overlooked? Please discuss!