function deepCopy(obj){
    let toString = Object.prototype.toString;
    if(typeof obj !== 'object') return obj;
    if(obj === null) return null;
    if(Array.isArray(obj)) return;
    let newObj = {};
    for(let key in obj){
        if([key])==='[object Date]'){
            newObj[key] = new Date(obj[key])
        } else if([key])==='[object RegExp]'){
            newObj[key] = new RegExp(obj[key])
            newObj[key] = deepCopy(obj[key]);
    return newObj;
downloadDownload PNG downloadDownload JPEG downloadDownload SVG

Tip: You can change the style, width & colours of the snippet with the inspect tool before clicking Download!

Click to optimize width for Twitter