When testing for a variable in a template these two appear to do the same thing. I've read CruftlessCraft's article on How to check for undefined variables but can't see an explanation of why I should use one over the other. In his examples (below) I note that only the default filter includes "" in the list of results, is that correct or significant? Is one faster or more efficient?
{% if twigVariable|default %}
Value is set and not empty
{% else %}
Value is either undefined, false, 0, null, "", [] or {}
{% endif %}
or
{% if twigVariable ?? false %}
The value is set and not empty
{% else %}
Value is either undefined, false, 0, null, [] or {}
{% endif %}
Does it make any difference if I don't need a fallback or the else and am just wrapping it around a div that shouldn't be shown if the variable doesn't have any usable content?