为什么Internet Explorer不支持include()?

问题描述 投票:0回答:2

我试图支持跨浏览器兼容性,但 IE ( Internet Explorer ) 不支持函数includes()。有谁知道为什么会这样?

internet-explorer cross-browser include indexof
2个回答
4
投票

Array.prototype.includes
String.prototype.includes
分别是 ES7(现在的 ES2017)ES6(现在的 ES2015) javascript 规范的一部分。

来自维基百科

Internet Explorer ...是一系列已停产的图形 Web 浏览器

关键词:停产。微软现在只开发Edge。 IE 可能仍会获得安全更新,但它将不再收到新的 JavaScript 更新或任何浏览器规范更新。


includes()
在 Internet Explorer 中不支持,你能解释一下原因吗?

Internet Explorer 不支持

Array.prototype.includes
String.prototype.includes
,因为 Microsoft 不再开发 IE。这些规范是在 Microsoft 停止使用 IE 之后制定的,因此,它不会获得这些功能。

但是等等

您仍然可以通过使用 polyfills 在旧浏览器中使用新的 javascript。

您可以使用 core-js 作为 polyfill 库。

要在 IE 中使用

includes(...)
,只需将其包含在
<head>
顶部的任何脚本
之前即可。

<script src="https://cdnjs.cloudflare.com/ajax/libs/core-js/2.4.1/core.min.js"></script>

0
投票

Internet Explorer 不支持 ES2016 和 ES2016+ 功能,因为它是过时的 Web 浏览器,已被 Microsoft Edge 取代。 Microsoft Edge 是 Microsoft 推出的现代 Web 浏览器,支持最新的 Web 标准和功能,包括 ES2016 和 ES2016+。建议使用 Microsoft Edge 或其他现代 Web 浏览器,以确保与最新 JavaScript 功能的兼容性。如果由于遗留原因需要支持 Internet Explorer,您可以使用像 Babel 这样的转译器将 ES2016 和 ES2016+ 代码转换为与 Internet Explorer 兼容的 ES5 代码。

© www.soinside.com 2019 - 2024. All rights reserved.