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

3.0.2 • 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 tokens.entries()) {
    if (!i)
        continue;
    
    fn(token);
}

License

MIT

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

    Package Sidebar

    Install

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

    Weekly Downloads

    4,690

    Version

    3.0.2

    License

    MIT

    Unpacked Size

    5.42 kB

    Total Files

    4

    Last publish

    Collaborators

    • coderaiser