JavaScript. Подробное руководство, 6-е издание, стр. 324

Возвращает true, если аргумент является объектом

<b>Function</b>
. Обратите внимание, что в IE версии 8 и ниже такие методы, определяемые броузером, как
<b>Window.alert()</b>
и
<b>Element.attachEvent(),</b>
не являются функциями в этом смысле.

<b>jQuery.isPlainObject()</b>

Возвращает true, если аргумент является «простым» объектом, а не экземпляром некоторого более специализированного типа или класса объектов.

<b>jQuery.makeArray()</b>

Если аргумент является объектом, подобным массиву, эта функция скопирует элементы из этого объекта в новый (истинный) массив и вернет этот массив. Если аргумент не является объектом, подобным массиву, эта функция просто вернет новый массив с аргументом в качестве единственного элемента.

<b>jQuery.map()</b>

Эта функция похожа на метод

<b>map()</b>
объекта
<b>Array</b>
, определяемый стандартом ES5. В первом аргументе она принимает массив или объект, подобный массиву, а во втором - функцию. Она передает указанной функции значение и индекс каждого элемента массива и возвращает новый массив, содержащий значения, возвращаемые функцией.
<b>jQuery.map()</b>
имеет пару отличий от метода
<b>map()</b>
в стандарте ES5. Если ваша функция отображения вернет null, это значение не будет включено в массив с результатами. И если ваша функция отображения вернет массив, в результат будут добавлены элементы этого массива по отдельности, а не сам массив.

<b>jQuery.merge()</b>

Эта функция принимает два массива или объекта, подобных массивам, добавляет элементы второго массива в первый и возвращает первый массив. Первый массив изменяется, а второй - нет. Обратите внимание, что эту функцию можно использовать для поверхностного копирования массивов, как показано ниже:

<b>var clone = jQuery.merge([], original);</b>

<b>jQuery.parseJSON()</b>

Эта функция разбирает строку в формате JSON и возвращает результат. Она возбуждает исключение, если в исходной строке будет обнаружена ошибка. Библиотека jQuery использует стандартную версию функции

<b>JSON.parse(),</b>
если она определена в броузере. Обратите внимание, что в библиотеке jQuery имеется только функция разбора строк в формате JSON, но в ней отсутствует функция сериализации объектов в формат JSON.

<b>jQuery.proxy()</b>

Эта функция напоминает метод bind() (раздел 8.7.4) объекта

<b>Function</b>
, определяемый стандартом ES5. В первом аргументе она принимает функцию, а во втором - объект и возвращает новую функцию, которая вызывает оригинальную как метод указанного объекта. Она не выполняет частичное применение аргументов, как метод
<b>bind().</b>

Функция

<b>jQuery.ргоху()</b>
может также вызываться с объектом в первом аргументе и именем свойства во втором. Значение свойства с указанным именем должно быть функцией. В этом случае вызов функции
<b>jQuery.proxy(o.n)</b>
вернет то же, что и вызов
<b>jQuery.proxy(o[n],о).</b>

Функция

<b>jQuery.ргоху()</b>
предназначена для использования с механизмом связывания обработчиков событий в библиотеке jQuery. Если в качестве обработчика была связана функция, полученная с помощью
<b>jQuery.proxy(),</b>
то удалить ее можно, указав ее оригинал.

<b>jQuery.support</b>

Это свойство подобно свойству

<b>jQuery.browser</b>
, но оно предназначено для переносимой проверки поддерживаемых возможностей (раздел 13.4.3) вместо менее надежного способа определения типа броузера. Значением свойства
<b>jQuery.support</b>
является объект, все свойства которого имеют логические значения и определяют наличие или отсутствие поддержки различных возможностей броузеров. Большинство свойств объекта
<b>jQuery.support</b>
содержат низкоуровневую информацию, используемую внутренними механизмами библиотеки jQuery. В основном они представляют интерес для разработчиков расширений и мало чем полезны прикладным программистам. Одно исключение - свойство
<b>jQuery.support.boxModel</b>
: оно имеет значение true, если броузер использует блочную модель «context-box», соответствующую стандарту CSS, и значение false в ІE6 и ІE7, работающих в режиме совместимости (раздел 16.2.3.1).

<b>jQuery.trim()</b>

Эта функция похожа на метод

<b>trim(),</b>
добавленный в строки стандартом ES5. Она принимает единственный строковый аргумент и возвращает его копию, из которой удалены начальные и завершающие пробельные символы.

19.8. Селекторы и методы выбора в библиотеке jQuery

На протяжении всей главы мы использовали функцию выбора

<b>$()</b>
из библиотеки jQuery, применяя простые CSS-селекторы. Теперь пришло время поближе познакомиться с грамматикой селекторов jQuery, а также с некоторыми методами, позволяющими фильтровать и расширять множество выбранных элементов.

19.8.1. Селекторы jQuery

Библиотека jQuery поддерживает достаточно полное подмножество селекторов, определяемых проектом стандарта «CSS3 Selectors», расширенное нестандартными, но очень удобными псевдоклассами. Основы CSS-селекторов обсуждались в разделе 15.2.5. Здесь мы продолжим это обсуждение и дополнительно познакомимся с более сложными селекторами. Имейте в виду, что в этом разделе описываются селекторы, реализованные в библиотеке jQuery. Многие из них могут использоваться в таблицах стилей CSS, но не все.

Грамматика селекторов делится на три уровня. Вы наверняка уже встречались с простейшими видами селекторов ранее. Селектор «#test» выбирает элемент с атрибутом id, имеющим значение «test». Селектор «blockquote» выбирает все элементы

<b>&lt;blockquote&gt;</b>
в документе, а селектор «div.note» выбирает все элементы
<b>&lt;div&gt;</b>
с атрибутом class, имеющим значение «note». Простые селекторы можно объединять в «комбинированные селекторы», такие как «div.note>p» и «block-quote і», отделяя их символом-комбинатором. И простые, и комбинированные селекторы можно группировать в списки, отделяя их точкой с запятой. Такие группы селекторов являются наиболее универсальной разновидностью селекторов, обычно передаваемых функции
<b>$()</b>
. Прежде чем перейти к обсуждению комбинированных селекторов и групп селекторов, необходимо познакомиться с синтаксисом простых селекторов.