outaozhen bb52c63d7d 库提交 5 years ago
..
.github bb52c63d7d 库提交 5 years ago
helpers bb52c63d7d 库提交 5 years ago
test bb52c63d7d 库提交 5 years ago
.eslintrc bb52c63d7d 库提交 5 years ago
.travis.yml bb52c63d7d 库提交 5 years ago
CHANGELOG.md bb52c63d7d 库提交 5 years ago
LICENSE bb52c63d7d 库提交 5 years ago
Makefile bb52c63d7d 库提交 5 years ago
README.md bb52c63d7d 库提交 5 years ago
es2015.js bb52c63d7d 库提交 5 years ago
es5.js bb52c63d7d 库提交 5 years ago
es6.js bb52c63d7d 库提交 5 years ago
index.js bb52c63d7d 库提交 5 years ago
package.json bb52c63d7d 库提交 5 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