Kevin 29b9a0c50c clean && clean html base 4 years ago
..
.github 29b9a0c50c clean && clean html base 4 years ago
helpers 29b9a0c50c clean && clean html base 4 years ago
test 29b9a0c50c clean && clean html base 4 years ago
.eslintrc 29b9a0c50c clean && clean html base 4 years ago
.travis.yml 29b9a0c50c clean && clean html base 4 years ago
CHANGELOG.md 29b9a0c50c clean && clean html base 4 years ago
LICENSE 29b9a0c50c clean && clean html base 4 years ago
Makefile 29b9a0c50c clean && clean html base 4 years ago
README.md 29b9a0c50c clean && clean html base 4 years ago
es2015.js 29b9a0c50c clean && clean html base 4 years ago
es5.js 29b9a0c50c clean && clean html base 4 years ago
es6.js 29b9a0c50c clean && clean html base 4 years ago
index.js 29b9a0c50c clean && clean html base 4 years ago
package.json 29b9a0c50c clean && clean html base 4 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