Ing*_*ürk 13 javascript ecmascript-5
是否有工具可以扫描我的Javascript代码以查找可能并非在所有浏览器中都存在的功能?
我的库完全不是用户界面,因此我不关心某些内容是如何"显示"的.我正在寻找的是类似于Mozilla的Javascript MDN.例如,对于Array.prototype.indexOf,他们警告说这是最近的ECMAScript添加,并非在所有浏览器中都存在(并且通常提供存根).我正在寻找的是一个工具,它列出了我的代码中属于此类别的函数.
您可以使用eslint-plugin-compat,这是ESlint linting 实用程序的插件。您甚至可以使用Browserlist来配置您想要支持的浏览器。
安装非常容易。你必须安装 eslint 和这个插件:
npm install --save-dev eslint-plugin-compat
Run Code Online (Sandbox Code Playgroud)
或者
yarn add --dev eslint eslint-plugin-compat
Run Code Online (Sandbox Code Playgroud)
并添加一个 ESlint 配置文件:
// .eslintrc
{
"extends": ["plugin:compat/recommended"]
}
Run Code Online (Sandbox Code Playgroud)
将支持的浏览器添加到您的package.json文件中:
// sample configuration (package.json)
{
// ...
"browserslist": ["last 2 Chrome versions", "IE 11"],
}
Run Code Online (Sandbox Code Playgroud)
然后运行 linter:
eslint yourfile.js
Run Code Online (Sandbox Code Playgroud)
就我而言,这是输出:
92:9 error Promise.all() is not supported in IE 11 compat/compat
94:9 error Promise.all() is not supported in IE 11 compat/compat
Run Code Online (Sandbox Code Playgroud)