我的 JavaScript 项目中有es5-shim.js和underscore.js。
es5-shim.js 只是在 Internet Explorer 和一些旧浏览器的数组上添加了一些 JavaScript 原生函数,例如reduce
和。some
underscore.js 添加了相同的东西(但语法不同)和更多的东西(对象和数组上的实用程序函数)。
但是,如果 es5-shim 添加的函数存在,underscore.js 会使用它们。
因此,在 Firefox 或 Chrome 等“最新”浏览器上,underscore.js 使用浏览器的本机功能。我认为它比纯 javascript 函数更好。但是在 Internet Explorer 上,underscore.js 使用 es5-shim 函数。如果我删除 es5-shim.js,underscore.js 会使用它自己的函数。
对此有何建议?我应该从我的项目中删除 es5-shim 并且只使用 underscore.js 吗?还是应该让 underscore.js 使用 es5-shim 的功能?