Потому что в JS ты не можешь передать переменную по ссылке. Ты передаешь по ссылке не переменную, а объект, на который она ссылается. Поэтому при работе с его свойствами он меняется и снаружи (очевидно), но если ты будешь пытаться перезаписать саму переменную, что хранит эту ссылку, то это будет только в контексте функции.