如何检测浏览器是否支持URL()构造函数?

时间:2017-06-05 06:44:17

标签: javascript google-chrome internet-explorer browser

我想检测浏览器是否支持URL()构造函数。

我想这样用:

const url = new URL(urlString, [baseURLstring])

我找不到合适的方法来检查浏览器是否支持它?

2 个答案:

答案 0 :(得分:3)

假设需要在JavaScript中完成检查 -

使用if(typeof URL === "function")

如果支持真正的网址

示例代码

if (typeof URL === "function") {
  const baseURLstring = "http://www.aaa.bbb/";
  let urlString = "/hello";
  const url = new URL(urlString, [baseURLstring]);
  console.log(url)
}
else if (navigator.userAgent.indexOf('MSIE') != -1 && typeof URL === 'object') {
  const baseURLstring = "http://www.aaa.bbb/";
  let urlString = "/hello";
  const url = new URL(urlString, [baseURLstring]);
  console.log(url)
}

答案 1 :(得分:2)

  1. 如果支持const,则可能还支持网址 -
  2. 除外
  3. IE似乎根本不支持URL
  4. if (window.URL) ...