Quanto à memória ocupada por null e undefined, é seguro dizer que não mais do que alguns bytes, e esse valor também varia de acordo com o ambiente de execução, mas no geral é bem pouco, irrelevante. Eu não consegui encontrar onde eu li essa informação, já faz um tempo, mas lembro que era uma análise completa da linguagem utilizando ferramentas de profiling de memória.