[英]Why do we use typeof XMLHttpRequest !=“undefined”? What it is undefined?
為什么我們使用typeof XMLHttpRequest !="undefined"
?
什么是未定義的我不了解那里的未定義是什么?
if (typeof XMLHttpRequest != "undefined")
{
xmlHttp= new XMLHttpRequest();
}
else if (window.ActiveXObject)
{
xmlHttp= new ActiveXObject("Microsoft.XMLHTTP");
}
這些檢查適用於非常舊版本的Internet Explorer(確切地說是IE6和更低版本)。
有幾種方法可以檢測瀏覽器是否支持XMLHttpRequest
。 使用typeof SomeObject
只是其中一種方法。 您可能還會看到...
if ("XMLHttpRequest" in window) { ... }
或直接向上
if (window.XMLHttpRequest) { ... }
首先,除非您對支持IE6的要求極高,否則請刪除此代碼。 不再需要它。
只是檢查是否在瀏覽器中定義了XMLHttpRequest
符號,以查看該瀏覽器是否本身支持Ajax調用。
如果不是這樣,它將退回到Microsoft專有的實施中。 如果定義了xmlHttpRequest
,則typeof XMLHttpRequest
將具有“功能”而不是“未定義”的值。
舉個例子:
var x = 3;
console.log(typeof x); // "number"
console.log(typeof y); // "undefined"
// And, in any modern browser
console.log(typeof XMLHttpRequest); // "function"
// In IE6
console.log(typeof XMLHttpRequest); // "undefined"
這種檢查XMLHttpRequest
是否存在的類型適用於非常老的Microsoft瀏覽器(IE6和更早的版本),不再需要,可以安全地刪除。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.