You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
An Object.assign shim. Invoke its "shim" method to shim Object.assign if it is unavailable.
This package implements the es-shim API interface. It works in an ES3-supported environment and complies with the spec. In an ES6 environment, it will also work properly with Symbols.
Takes a minimum of 2 arguments: target and source.
Takes a variable sized list of source arguments - at least 1, as many as you want.
Throws a TypeError if the target argument is null or undefined.
Most common usage:
varassign=require('object.assign').getPolyfill();// returns native method if compliant/* or */varassign=require('object.assign/polyfill')();// returns native method if compliant
/* when Object.assign is not present */deleteObject.assign;varshimmedAssign=require('object.assign').shim();/* or */varshimmedAssign=require('object.assign/shim')();assert.equal(shimmedAssign,assign);vartarget={a: true,b: true,c: true};varsource={c: false,d: false,e: false};varassigned=assign(target,source);assert.deepEqual(Object.assign(target,source),assign(target,source));
/* when Object.assign is present */varshimmedAssign=require('object.assign').shim();assert.equal(shimmedAssign,Object.assign);vartarget={a: true,b: true,c: true};varsource={c: false,d: false,e: false};assert.deepEqual(Object.assign(target,source),assign(target,source));
Tests
Simply clone the repo, npm install, and run npm test