UNPKG

sussy-util

Version:
25 lines (24 loc) 675 B
"use strict"; var __importDefault = (this && this.__importDefault) || function (mod) { return (mod && mod.__esModule) ? mod : { "default": mod }; }; Object.defineProperty(exports, "__esModule", { value: true }); const IsSomething_1 = __importDefault(require("../Classes/IsSomething")); /** * Recursively clones an object or array. * * @template T */ const clone = (obj) => { if (Array.isArray(obj)) return obj.map(clone); if (IsSomething_1.default.isObject(obj)) { const _clone = {}; for (const key in obj) { _clone[key] = clone(obj[key]); } return _clone; } return obj; }; exports.default = clone;