peach a19a732be8 commit message 2 years ago
..
.github a19a732be8 commit message 2 years ago
helpers a19a732be8 commit message 2 years ago
test a19a732be8 commit message 2 years ago
.eslintrc a19a732be8 commit message 2 years ago
.travis.yml a19a732be8 commit message 2 years ago
CHANGELOG.md a19a732be8 commit message 2 years ago
LICENSE a19a732be8 commit message 2 years ago
Makefile a19a732be8 commit message 2 years ago
README.md a19a732be8 commit message 2 years ago
es2015.js a19a732be8 commit message 2 years ago
es5.js a19a732be8 commit message 2 years ago
es6.js a19a732be8 commit message 2 years ago
index.js a19a732be8 commit message 2 years ago
package.json a19a732be8 commit message 2 years ago

README.md

es-to-primitive Version Badge

Build Status dependency status dev dependency status License Downloads

npm badge

ECMAScript “ToPrimitive” algorithm. Provides ES5 and ES2015 versions. When different versions of the spec conflict, the default export will be the latest version of the abstract operation. Alternative versions will also be available under an es5/es2015 exported property if you require a specific version.

Example

var toPrimitive = require('es-to-primitive');
var assert = require('assert');

assert(toPrimitive(function () {}) === String(function () {}));

var date = new Date();
assert(toPrimitive(date) === String(date));

assert(toPrimitive({ valueOf: function () { return 3; } }) === 3);

assert(toPrimitive(['a', 'b', 3]) === String(['a', 'b', 3]));

var sym = Symbol();
assert(toPrimitive(Object(sym)) === sym);

Tests

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