yuanhao b574408fd7 first commit 3 years ago
..
.github b574408fd7 first commit 3 years ago
helpers b574408fd7 first commit 3 years ago
test b574408fd7 first commit 3 years ago
.eslintrc b574408fd7 first commit 3 years ago
.travis.yml b574408fd7 first commit 3 years ago
CHANGELOG.md b574408fd7 first commit 3 years ago
LICENSE b574408fd7 first commit 3 years ago
Makefile b574408fd7 first commit 3 years ago
README.md b574408fd7 first commit 3 years ago
es2015.js b574408fd7 first commit 3 years ago
es5.js b574408fd7 first commit 3 years ago
es6.js b574408fd7 first commit 3 years ago
index.js b574408fd7 first commit 3 years ago
package.json b574408fd7 first commit 3 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