Программный пакет программного обеспечения Microsoft на базе COM называется MSXML и существует в разных версиях, которые могут сосуществовать в системе Windows. Все поддерживаемые в настоящее время версии ОС Microsoft, соответственно, новейшие поддерживаемые пакеты Microsoft OS поставляются с MSXML 3 и MSXML 6. Идентификаторы программы, которые вы передаете в ActiveXObject
в JScript, задокументированы для MSXML 3 здесь: http://msdn.microsoft.com/en-us/library/ms766426%28v=vs.85%29 и для MSXML 6 здесь: http://msdn.microsoft.com/en-us/library/ms764622%28v=vs.85%29. Как вы можете видеть, как-то путано, что идентификаторы программ начинаются с «MSXML2», а версия MSXML добавляется в конце, поэтому документ DOM MSXML 3.0 имеет идентификатор программы MSXML2.DOMDocument.3.0
и документ DOM MSXML 6.0 с идентификатором программы Msxml2.DOMDocument.6.0
.
Идентификаторы программ, начинающиеся с Microsoft.
, являются устаревшими идентификаторами программ, представленными с более старыми версиями MSXML, в наши дни они не нуждаются в них, когда MSXML 3 и MSXML 6 являются частью ОС или последней службы на любой поддерживаемой ОС.
Какая версия для выбора MSXML 3 или 6, отчасти зависит от того, что вы хотите сделать; основное различие между MSXML 3 и MSXML 6 состоит в том, что MSXML 6 имеет синтаксический анализатор, поддерживающий проверку на соответствие схеме или набору схем, в то время как MSXML 3 поддерживает только проверку на основе DTD. MSXML 6 по умолчанию также имеет некоторые более жесткие настройки безопасности, о которых вам нужно знать, см. http://msdn.microsoft.com/en-us/library/ms754611%28v=vs.85%29.
В качестве сообщения также упоминается XSLT, и MSXML 3 и 6 поддерживают XSLT и XPath 1.0, поэтому с точки зрения стандартного соответствия вы можете выбрать любой из них, с точки зрения производительности вы можете обнаружить, что MSXML 6 работает лучше.
Вы можете посмотреть здесь: http://ajaxpatterns.org/XMLHttpRequest_Call – benqus
Спасибо @benqus - так что ссылка, кажется, указывает на новый объект ActiveXObject ("Msxml2.XMLHTTP"); как тот, который нужно использовать. Но какова история за остальными, выполняют ли они одну и ту же функцию или имеют альтернативное использование? – Nealbo
Возможно, они есть, но я предполагаю, что в более ранних версиях Интернета. =) Возможно, я ошибаюсь, и это действительно специфические вещи IE и Microsoft, но общий подход заключается в использовании ссылки, упомянутой в ссылке. Это классно и для текста, и для xml. =) – benqus