Этот код работает очень хорошо
function isUndefined(array, index) {
return ((String(array[index]) == "undefined") ? "Yes" : "No");
}
Подпись MZ - это подпись, используемая перемещаемым 16-разрядным форматом EXE MS-DOS.
Причина, по которой двоичный файл PE содержит заголовок MZ, заключается в обратной совместимости. Если исполняемый файл запускается в системе на основе DOS, он будет запускать версию MZ (которая почти всегда является просто заглушкой, в которой говорится, что вам нужно запустить программу в системе Win32).
Конечно, в настоящее время это не так полезно, как это было еще тогда, когда мир переходил от DOS к тому, что будет после него.
Тогда было несколько программ, которые фактически связывали версию DOS и версию Win32 в одном двоичном файле.
И, как и в большинстве случаев, связанных с историей Windows, у Раймонда Чена есть несколько интересных статей на эту тему:
Thety являются инициалами программиста Microsoft и идентифицируют файл как исполняемый файл DOS, подробнее см. http://en.wikipedia.org/wiki/DOS_executable информация.
Насколько я понимаю, прочитав статью в википедии и Учебное пособие Iczelion PE , это просто для поддержания совместимости и включения dos или HX DOS Extender для выполнения определенного кода рядом с заголовком MZ.
Из devsource можно найти дополнительную информацию, например, MZ обозначает Марка Збиковски, одного из разработчиков MS-DOS. И как операционная система ведет себя и обрабатывает данные из заголовка MZ.
Марк Збиковски поместил свои инициалы в исходный формат EXE MS-DOS. Эта подпись была необходима, чтобы отличить файлы .EXE от гораздо более простого формата .COM в DOS.
Каждый PE-файл также содержит 16-битную программу DOS и поэтому начинается с этого заголовка .EXE. Эта программа DOS обычно распечатывает «Для этой программы требуется Microsoft Windows» или подобное. Я не знаю, создают ли современные компиляторы заглушку DOS, но стандарт PE по-прежнему говорит, что PE начинается с 16-битного заголовка EXE.
Это «магическое число» исполняемого файла dos. Устаревшие вещи, которые вы можете игнорировать.