Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- // Function
- function extend(obj) {
- class Extended extends obj.constructor {
- constructor(obj) {
- super(...(Array.isArray(obj) ? obj : [obj]));
- this.$ = 'something';
- }
- }
- return new Extended(obj);
- }
- // Examples
- const originalString = 'test';
- const extendedString = extend(originalString);
- String(extendedString) === originalString
- extendedString.toString()
- extendedString.valueOf()
- extendedString.$
- extendedString.constructor.prototype
- const originalArray = [4, 5, 6];
- const extendedArray = extend(originalArray);
- JSON.stringify(extendedArray) === JSON.stringify(originalArray)
- extendedArray.push(7)
- extendedArray.valueOf()
- extendedArray.toString()
- extendedArray.$
Advertisement
Add Comment
Please, Sign In to add comment