Магическое число может также быть числом со специальным предложением, hardcoded семантика. Например, я однажды видел систему, где рекордные идентификаторы> 0 обычно рассматривали, 0 саму была "новая запись",-1 был, "это - корень", и-99 был, "это было создано в корне". 0 и-99 заставил бы WebService предоставлять новый идентификатор.
то, Что плохо об этом, - то, что Вы снова используете пространство (то из целых чисел со знаком для рекордных идентификаторов) для специальных способностей. Возможно, Вы никогда не будете хотеть создавать запись с идентификатором 0, или с отрицательным идентификатором, но даже если не, каждый человек, который смотрит или на код или на базу данных, мог бы наткнуться на это и быть смущен сначала. Само собой разумеется, что те специальные значения не были хорошо зарегистрированы.
Возможно, 22, 7,-12 и 620 количество как магические числа, также.;-)
Вы смотрели, как назначать свой хэш с использованием window.location.hash = newHash вместо замены всего URL-адреса?
https://developer.mozilla.org /en/DOM/window.location[12120 visible