zheng 3cabbb3159 webpack 18 hours ago
..
.github 3cabbb3159 webpack 18 hours ago
test 3cabbb3159 webpack 18 hours ago
.eslintrc 3cabbb3159 webpack 18 hours ago
CHANGELOG.md 3cabbb3159 webpack 18 hours ago
LICENSE 3cabbb3159 webpack 18 hours ago
README.md 3cabbb3159 webpack 18 hours ago
RequireObjectCoercible.d.ts 3cabbb3159 webpack 18 hours ago
RequireObjectCoercible.js 3cabbb3159 webpack 18 hours ago
ToObject.d.ts 3cabbb3159 webpack 18 hours ago
ToObject.js 3cabbb3159 webpack 18 hours ago
index.d.ts 3cabbb3159 webpack 18 hours ago
index.js 3cabbb3159 webpack 18 hours ago
isObject.d.ts 3cabbb3159 webpack 18 hours ago
isObject.js 3cabbb3159 webpack 18 hours ago
package.json 3cabbb3159 webpack 18 hours ago
tsconfig.json 3cabbb3159 webpack 18 hours ago

README.md

es-object-atoms Version Badge

github actions coverage License Downloads

npm badge

ES Object-related atoms: Object, ToObject, RequireObjectCoercible.

Example

const assert = require('assert');

const $Object = require('es-object-atoms');
const isObject = require('es-object-atoms/isObject');
const ToObject = require('es-object-atoms/ToObject');
const RequireObjectCoercible = require('es-object-atoms/RequireObjectCoercible');

assert.equal($Object, Object);
assert.throws(() => ToObject(null), TypeError);
assert.throws(() => ToObject(undefined), TypeError);
assert.throws(() => RequireObjectCoercible(null), TypeError);
assert.throws(() => RequireObjectCoercible(undefined), TypeError);

assert.equal(isObject(undefined), false);
assert.equal(isObject(null), false);
assert.equal(isObject({}), true);
assert.equal(isObject([]), true);
assert.equal(isObject(function () {}), true);

assert.deepEqual(RequireObjectCoercible(true), true);
assert.deepEqual(ToObject(true), Object(true));

const obj = {};
assert.equal(RequireObjectCoercible(obj), obj);
assert.equal(ToObject(obj), obj);

Tests

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

Security

Please email @ljharb or see https://tidelift.com/security if you have a potential security vulnerability to report.