There's some valid reasons not to entirely initialize memory.
The most common is to retain some state after reset, like how Mario Bros. will remember which world you got to for the "continue" cheat code even after you reset. It checks for a very specific "key" value somewhere in RAM on startup, and if it's there it presumes that you've already been playing and it should leave it how it is. (The key value should be at least few bytes, with a healthy mix of 0 and 1 bits, something unlikely to happen by accident.) This is how the SMB / Tennis "swap trick" works:
https://www.youtube.com/watch?v=eEEnEoKSgQsGames that have a battery backed save will have to deal with uninitialized SRAM at first boot, and after any battery failure. Obviously it shouldn't be initialized if the player already has something saved there. Similar techniques apply in this case.
Of course, there's a bunch of games that just straight up forget to initialize memory, and rely on "lucky" startup values to run correctly.