wilderness-core
Version:
The SVG animation engine behind Wilderness
37 lines (30 loc) • 885 B
JavaScript
var _typeof = typeof Symbol === "function" && typeof Symbol.iterator === "symbol" ? function (obj) { return typeof obj; } : function (obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; };
/**
* A naive, but small, clone function.
*
* @param {*} value
*
* @returns {*}
*
* @example
* clone('hello world')
*/
var clone = function clone(value) {
if ((typeof value === 'undefined' ? 'undefined' : _typeof(value)) !== 'object') {
return value;
} else if (Array.isArray(value)) {
var arr = [];
for (var i = 0, l = value.length; i < l; i++) {
arr.push(clone(value[i]));
}
return arr;
} else if (value !== null) {
var obj = {};
for (var key in value) {
obj[key] = clone(value[key]);
}
return obj;
}
return value;
};
export default clone;