Olá Fernando, tudo bem?
O método setItem() do localStorage é utilizado para armazenar um par chave-valor no armazenamento local do navegador. A chave é uma string que identifica o item que está sendo armazenado e o valor pode ser qualquer coisa que possa ser convertida em uma string.
No seu exemplo, a chave é "item" e o valor é a string JSON que representa o objeto "itens".
Já no segundo exemplo que você propôs, a chave seria o objeto "novoItem" e não uma string. Isso pode causar problemas, já que o método setItem() espera uma string como chave.
Espero ter ajudado e bons estudos!