Wondering what’s next for npm?Check out our public roadmap! »

    object-keys
    DefinitelyTyped icon, indicating that this package has TypeScript declarations provided by the separate @types/object-keys package

    1.1.1 • Public • Published

    object-keys Version Badge

    Build Status dependency status dev dependency status License Downloads

    npm badge

    browser support

    An Object.keys shim. Invoke its "shim" method to shim Object.keys if it is unavailable.

    Most common usage:

    var keys = Object.keys || require('object-keys');

    Example

    var keys = require('object-keys');
    var assert = require('assert');
    var obj = {
        a: true,
        b: true,
        c: true
    };
     
    assert.deepEqual(keys(obj), ['a', 'b', 'c']);
    var keys = require('object-keys');
    var assert = require('assert');
    /* when Object.keys is not present */
    delete Object.keys;
    var shimmedKeys = keys.shim();
    assert.equal(shimmedKeys, keys);
    assert.deepEqual(Object.keys(obj), keys(obj));
    var keys = require('object-keys');
    var assert = require('assert');
    /* when Object.keys is present */
    var shimmedKeys = keys.shim();
    assert.equal(shimmedKeys, Object.keys);
    assert.deepEqual(Object.keys(obj), keys(obj));

    Source

    Implementation taken directly from es5-shim, with modifications, including from lodash.

    Tests

    Simply clone the repo, npm install, and run npm test

    Install

    npm i object-keys

    DownloadsWeekly Downloads

    24,057,317

    Version

    1.1.1

    License

    MIT

    Unpacked Size

    26.5 kB

    Total Files

    11

    Last publish

    Collaborators

    • avatar