Transforms arr.includes(value)
to ES5 without a polyfill
Inspired by babel-plugin-array-includes.
In
[1, 2, 3].includes(1);
[1, 2, 3]['includes'](1);
arr.includes(1);
arr['includes'](1);
Out
[1, 2, 3].indexOf(1) !== -1;
[1, 2, 3].indexOf(1) !== -1;
(function (o, a0) { return Array.isArray(o) ? o.indexOf(a0) !== -1 : o.includes(a0); })(arr, 1);
(function (o, a0) { return Array.isArray(o) ? o.indexOf(a0) !== -1 : o.includes(a0); })(arr, 1);
$ npm install babel-plugin-transform-array-prototype-includes
.babelrc
{
"plugins": ["transform-array-prototype-includes"]
}
$ babel --plugins transform-array-prototype-includes script.js
require("@babel/core").transform("code", {
plugins: ["transform-array-prototype-includes"]
});