_MBK_ Прав, этот номер проходит не только с акробатом, он проходит со всем. Очевидный вариант использовать цикл:
Код:
for (var prop in obj) {
if (obj[prop] === val) { /* делаем что-нибудь */ }
};
Здесь важно обращать внимание две вещи: на оператор сравнения — надёжнее использовать строгое "===" сравнение; и на особенности работы цикла
for (
var prop
in obj).
Дело в том, что такая форма цикла обходит не только собственные свойства объекта obj но и все прочие, которые им могут быть унаследованы от прототипов родительских объектов. Чтобы этого избежать, есть ещё одна устоявшаяся форма этого же цикла:
Код:
for (var prop in obj) if (obj.hasOwnProperty(prop)) {
if (obj[prop] === val) { /* делаем что-нибудь */ }
};
Предварительная проверка obj.
hasOwnProperty(prop) обеспечит работу цикла только для собственных свойств объекта и значительно сократит время обхода его свойств.