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»:
первый объект
третий объект