This repository has been archived on 2020-11-02. You can view files and clone it, but cannot push or open issues or pull requests.

object.values Version Badge

Build Status dependency status dev dependency status License Downloads

npm badge

browser support

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);

Tests

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