Tenho escrito JavaScript há bastante tempo e nunca tive um motivo para usá-lo null. Parece que undefinedé sempre preferível e tem o mesmo propósito de maneira programática. Quais são algumas razões práticas para usar em nullvez de undefined?
document.getElementById()esse que podem retornar, nullmas não undefined, então, nesses casos, por que você testaria o retorno undefined? (Claro, funcionaria se você usasse em ==vez de ===, mas ainda assim, por que você testaria deliberadamente para ver se há algo errado?)
document.getElementById('does-not-exist')). As variáveis var a;e os valores de retorno da função são predefinidos como indefinidos. No passado, nulo estava no escopo global, portanto, usá-lo tornava a execução mais lenta e me fazia preferir outros tipos falsos (falso, '', 0) às referências livres. Eu pessoalmente evito null a menos que haja uma razão convincente de outra forma, porque eu o considero mais simples, o que geralmente é melhor.