getItemsByPropValue(items: Object, propName: String, value: Object, asPPObj: Boolean, first: Boolean);
items. Массив, по которому осуществляется поиск;
propName. Строка, содержащая перечисление последовательности вложенных свойств через точку;
value. Значение свойства;
asPPObj. Признак того, является ли исходный массив объектом PP.Object. Допустимые значения:
true. Исходный массив является объектом PP.Object;
false. Исходный массив является объектом PP.List;
first. Признак того, проверяется ли в исходном массиве только первый элемент. Допустимые значения:
true. В исходном массиве проверяется только первый элемент;
false. Поиск производится по всему исходному массиву.
Метод getItemsByPropValue возвращает массив всех элементов в исходном массиве, в которых содержится свойство с заданным наименованием и значением.
Для выполнения примера необходимо наличие на html-странице ссылок на файлы сценария jquery.js, PP.js и файл стилей PP.css. Создадим массив элементов, содержащих текстовое описание и различное количество свойств, зададим свойствам различные значения и получим массив элементов, содержащих заданное свойство:
// Создаем массив, содержащий в себе элементы с описанием и разным количеством свойств
var item1 = {
field1: "right",
description: "первый объект"
};
var item2 = {
field1: "wrong",
field2: "right",
description: "второй объект"
};
var item3 = {
field1: "right",
field2: "right",
field3: "right",
description: "третий объект"
};
var items = {
f1: item1,
f2: item2,
f3: item3
};
// Получаем массив элементов, в которых содержится свойство «field1» со значением «right»
var result = PP.getItemsByPropValue(items, "field1", "right", true, false);
// Выводим в консоль браузера описание всех объектов в полученном массиве
for (var i in result) {
console.log(result[i].description);
}
В результате выполнения примера в консоль браузера было выведено текстовое описание объектов, которые содержат свойство «field1» со значением «right»:
первый объект
третий объект