Узнать значение в двумерном массиве, зная "соседние" значение

Рейтинг: 0Ответов: 1Опубликовано: 27.10.2014

Здравствуйте, есть некий массив:

[
{"name":"Меч","id_b":"111","id":"4"},
{"name":"Яйцо","id_b":"112","id":"5"},
{"name":"Красный ключ","id_b":"113","id":"6"}
]

Как, зная 'id_b', узнать 'id' или 'name'?
Был вариант использовать так называемый ассоциативный массив, но тогда это получается не массив, а объект — с ним неудобно работать, так как не работает .length.

Ответы

▲ 1Принят

Решение http://jsfiddle.net/2tr0hj46/3/

HTML

<input type="text" id="need_id" value="112"> - Введите id_b
<a href="#" id="button">Нажми что бы найти</a>

JS

var arr = [
    {"name":"Меч","id_b":"111","id":"4"},
    {"name":"Яйцо","id_b":"112","id":"5"},
    {"name":"Красный ключ","id_b":"113","id":"6"}
];

function doSomething(){
    arr.forEach(function(element, index){
        if (element.id_b == document.getElementById('need_id').value)
            alert('name = '+element.name+', id = '+element.id);
    })
}

document.getElementById('button').onclick = doSomething;