Share your code. npm Orgs help your team discover, share, and reuse code. Create a free org »

    object-extendpublic

    object-extend

    A well-tested function to deep extend (or merge) JavaScript objects without further dependencies.

    Unit-tested with over 94 single assertion tests.

    Usage

    var a = {
        app: 'My App',
        environment: 'development',
        connections: {
            default: 'mysql',
            mysql: {
                driver: 'mysql',
                host: 'localhost',
                database: 'myapp.dev'
            }
        }
    };
     
    var b = {
        environment: 'production',
        connections: {
            mysql: {
                database: 'myapp.prod'
            }
        }
    };
     
    extend(a, b);
     
    // Result:
    {
        app: 'My App',
        environment: 'production',
        connections: {
            default: 'mysql',
            mysql: {
                driver: 'mysql',
                host: 'localhost',
                database: 'myapp.prod'
            }
        }
    }

    Limitations

    Array: Only actual objects are extended. Arrays will not be merged but overwritten.

    var a { foo: [1, 2, 3] };
    var b { foo: [4, 5, 6] };
     
    extend(a, b); // { foo: [4, 5, 6] }

    Notes

    This function extends only enumerable properties without going up the prototype chain.

    License

    MIT.

    Keywords

    none

    install

    npm i object-extend

    Downloadsweekly downloads

    571

    version

    0.5.0

    license

    none

    repository

    githubgithub

    last publish

    collaborators

    • avatar