Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 21.11.2014, 12:50
Новичок на форуме
Отправить личное сообщение для ilya2306 Посмотреть профиль Найти все сообщения от ilya2306
 
Регистрация: 04.12.2012
Сообщений: 6

Как получить родителя объекта?
Функция поиска строки внутри объекта
function search(obj){
    for (var keys in obj){
        if(typeof obj[keys] = "object"){
            search (obj[keys]);
        else{
            if(obj[keys] === text)
                console.log(text, " найден в объекте ", ИМЯ РОДИТЕЛЯ);
        }
    }
}


Имеется объект:
obj:{
    a:{
        a_val1:{
            a_val1_a: "some text"
        },
        a_val2:"text"
    },
    b:{
        b_val1:{
            b_val1_a: "one more",
            b_val2_a: "one more2"
        }
        b_val2: "this is string"
    }
}    

var text = "text";

search (obj);


Т.е. в результате работы функции мы находим a_val2 === "text". Надо вывести в консоль "a"

Заранее спасибо!
Ответить с цитированием
  #2 (permalink)  
Старый 21.11.2014, 15:21
Аватар для ksa
ksa ksa вне форума
CacheVar
Отправить личное сообщение для ksa Посмотреть профиль Найти все сообщения от ksa
 
Регистрация: 19.08.2010
Сообщений: 14,225

ilya2306, ты хоть без ошибок "примеры" свои выкладывай...

var obj={
    a:{
        a_val1:{
            a_val1_a: "some text"
        },
        a_val2:"text"
    },
    b:{
        b_val1:{
            b_val1_a: "one more",
            b_val2_a: "one more2"
        },
        b_val2: "this is string"
    }
};    
var text = "text";
search (obj);
function search(obj,key){
	key=key||'';
	var d=(key=='')? '': '->';
    for (var keys in obj) {
        if(typeof obj[keys] == "object"){
            search (obj[keys],keys);
        } else {
            if(obj[keys] === text)
                alert(text+ " найден в ключе "+ key+d+keys);
        };
    };
};
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Управление скроллом "а-ля тач" HonesT Элементы интерфейса 2 27.08.2013 14:25
Как получить все атрибуты <input> Kotakota jQuery 7 08.10.2012 18:22
Как получить два разных значения одного объекта EvgeniyRRU Общие вопросы Javascript 5 21.09.2012 15:24
Как получить название композиции из Windows Mepia Plyaer alx99 Javascript под браузер 1 18.02.2011 16:21
Можно ли получить имя экземпляра объекта внутри самого объекта? Ichigeki Общие вопросы Javascript 9 14.11.2008 19:00