tree: 0e2a490476f11070102874e40df8500b785b9bfe [path history] [tgz]
  1. .editorconfig
  2. .eslintignore
  3. .eslintrc
  4. .nycrc
  5. .travis.yml
  6. auto.js
  7. CHANGELOG.md
  8. implementation.js
  9. index.js
  10. LICENSE
  11. package.json
  12. polyfill.js
  13. README.md
  14. shim.js
node_modules/object.values/README.md

object.values Version Badge

github actions coverage dependency status dev dependency status License Downloads

npm badge

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