@putout/plugin-convert-object-entries-to-array-entries

3.0.1 • Public • Published

@putout/plugin-convert-object-entries-to-array-entries NPM version

The Object.entries() static method returns an array of a given object's own enumerable string-keyed property key-value pairs.

(c) Object.entries()

The entries() method returns a new Array Iterator object that contains the key/value pairs for each index in the array.

(c) Array.prototype.entries()

🐊Putout plugin adds ability to convert Object.entries() to Array.prototype.entries() to avoid bugs related to using index in unary (!index) or binary (index > length) expressions, the thing is Object.entries() returns list of Array<String, any> tuples, and Array.prototype.entries() returns list of Array<Number, any> tuples it can lead to bugs when you expected that index is number.

Check out in 🐊Putout Editor.

Install

npm i @putout/plugin-convert-object-entries-to-array-entries -D

Rule

{
    "rules": {
        "convert-object-entries-to-array-entries": "on"
    }
}

Example of incorrect code

const {entries} = Object;

for (const [i, token] of entries(tokens)) {
    if (!i)
        continue;
    
    fn(token);
}

Example of correct code

for (const [i, token] of entries(tokens)) {
    if (!i)
        continue;
    
    fn(token);
}

License

MIT

Package Sidebar

Install

npm i @putout/plugin-convert-object-entries-to-array-entries

Weekly Downloads

3,449

Version

3.0.1

License

MIT

Unpacked Size

5.42 kB

Total Files

4

Last publish

Collaborators

  • coderaiser