Wondering what’s next for npm?Check out our public roadmap! »

    unbox-primitive

    1.0.1 • Public • Published

    unbox-primitive Version Badge

    dependency status dev dependency status License Downloads

    npm badge

    Unbox a boxed JS primitive value. This module works cross-realm/iframe, does not depend on instanceof or mutable properties, and works despite ES6 Symbol.toStringTag.

    Example

    var unboxPrimitive = require('unbox-primitive');
    var assert = require('assert');
    
    assert.equal(unboxPrimitive(new Boolean(false)), false);
    assert.equal(unboxPrimitive(new String('f')), 'f');
    assert.equal(unboxPrimitive(new Number(42)), 42);
    const s = Symbol();
    assert.equal(unboxPrimitive(Object(s)), s);
    assert.equal(unboxPrimitive(new BigInt(42)), 42n);
    
    // any primitive, or non-boxed-primitive object, will throw

    Tests

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

    Install

    npm i unbox-primitive

    DownloadsWeekly Downloads

    10,838,609

    Version

    1.0.1

    License

    MIT

    Unpacked Size

    12.8 kB

    Total Files

    11

    Last publish

    Collaborators

    • avatar