GitHub - es-shims/Object.entries: ES2017 spec-compliant shim for Object.entries (original) (raw)
object.entries 
An ES2017 spec-compliant Object.entries
shim. Invoke its "shim" method to shim Object.entries
if it is unavailable or noncompliant.
This package implements the es-shim API interface. It works in an ES3-supported environment and complies with the spec.
Most common usage:
var assert = require('assert'); var entries = require('object.entries');
var obj = { a: 1, b: 2, c: 3 }; var expected = [['a', 1], ['b', 2], ['c', 3]];
if (typeof Symbol === 'function' && typeof Symbol() === 'symbol') { // for environments with Symbol support var sym = Symbol(); obj[sym] = 4; obj.d = sym; expected.push(['d', sym]); }
assert.deepEqual(entries(obj), expected);
if (!Object.entries) { entries.shim(); }
assert.deepEqual(Object.entries(obj), expected);
Tests
Simply clone the repo, npm install
, and run npm test