Глобальные переменные плохи тем, что засоряют общее пространство. Когда вам понадобится использовать сторонний скрипт, или несколько своих, где используется одно и тоже имя переменной для разных целей, вы будете неприятно удивлены.
Иногда это не большая проблема, а иногда она может привести к переписыванию 1000+ строк кода.
Косяк в том, что у вас
typzakaz = window.nshkaf;
вместо
document.getElementById('typzakaz') = window.nshkaf;