JSFiddle - React, Tailwind, and code Playground

by qustosh

JavaScript

var o = {
    a:{
        a:"secret",
        c:"secret",
        tr:{
            c:"secret"
        }
    },
    b:"secret",
    c: 123,
    d: {
        a:"secret"
    },
    e:{
        c:"secret"
    }

};

var all = [];

function deep(o, search, path){
    
    var found = 0;
    var path = path || "";
    var tempPath;
    
    for(var val in o){
        
        if(o[val] === search){
        
            tempPath = path + "["+ val +"]";    
            all.push({
                path: tempPath,
                ob:o,
                val:val
            });
           
            found++;    
        }
        
        if($.type(o[val]) == "object"){
            tempPath = path + "["+ val +"]";
            arguments.callee(o[val], search, tempPath);    
        }
    }
    
    return found != 0 ? true : false;

}

deep(o, "secret");
console.log("all = ",all)