gaojunlong 0b996e41aa 2025-03-04-1 2 months ago
..
helpers 0b996e41aa 2025-03-04-1 2 months ago
test 0b996e41aa 2025-03-04-1 2 months ago
.editorconfig 0b996e41aa 2025-03-04-1 2 months ago
.eslintrc 0b996e41aa 2025-03-04-1 2 months ago
.jscs.json 0b996e41aa 2025-03-04-1 2 months ago
.travis.yml 0b996e41aa 2025-03-04-1 2 months ago
CHANGELOG.md 0b996e41aa 2025-03-04-1 2 months ago
LICENSE 0b996e41aa 2025-03-04-1 2 months ago
Makefile 0b996e41aa 2025-03-04-1 2 months ago
README.md 0b996e41aa 2025-03-04-1 2 months ago
es2015.js 0b996e41aa 2025-03-04-1 2 months ago
es5.js 0b996e41aa 2025-03-04-1 2 months ago
es6.js 0b996e41aa 2025-03-04-1 2 months ago
index.js 0b996e41aa 2025-03-04-1 2 months ago
package.json 0b996e41aa 2025-03-04-1 2 months 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