An ES2017 spec-compliant Object.values
shim. Invoke its “shim” method to shim Object.values
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 values = require('object.values'); var obj = { a: 1, b: 2, c: 3 }; var expected = [1, 2, 3]; if (typeof Symbol === 'function' && typeof Symbol() === 'symbol') { // for environments with Symbol support var sym = Symbol(); obj[sym] = 4; obj.d = sym; expected.push(sym); } assert.deepEqual(values(obj), expected); if (!Object.values) { values.shim(); } assert.deepEqual(Object.values(obj), expected);
Simply clone the repo, npm install
, and run npm test