Jquery вызов функции по имени

Функции

Зачастую нам надо повторять одно и то же действие во многих частях программы.

Например, необходимо красиво вывести сообщение при приветствии посетителя, при выходе посетителя с сайта, ещё где-нибудь.

Чтобы не повторять один и тот же код во многих местах, придуманы функции. Функции являются основными «строительными блоками» программы.

Объявление функции

Для создания функций мы можем использовать объявление функции.

Пример объявления функции:

Вызов showMessage() выполняет код функции. Здесь мы увидим сообщение дважды.

Этот пример явно демонстрирует одно из главных предназначений функций: избавление от дублирования кода.

Если понадобится поменять сообщение или способ его вывода – достаточно изменить его в одном месте: в функции, которая его выводит.

Локальные переменные

Переменные, объявленные внутри функции, видны только внутри этой функции.

Внешние переменные

У функции есть доступ к внешним переменным, например:

Функция обладает полным доступом к внешним переменным и может изменять их значение.

Внешняя переменная используется, только если внутри функции нет такой локальной.

Переменные, объявленные снаружи всех функций, такие как внешняя переменная userName в вышеприведённом коде – называются глобальными.

Глобальные переменные видимы для любой функции (если только их не перекрывают одноимённые локальные переменные).

Желательно сводить использование глобальных переменных к минимуму. В современном коде обычно мало или совсем нет глобальных переменных. Хотя они иногда полезны для хранения важнейших «общепроектовых» данных.

Параметры

Мы можем передать внутрь функции любую информацию, используя параметры (также называемые аргументами функции).

Параметры по умолчанию

Например, вышеупомянутая функция showMessage(from, text) может быть вызвана с одним аргументом:

Если мы хотим задать параметру text значение по умолчанию, мы должны указать его после = :

Теперь, если параметр text не указан, его значением будет «текст не добавлен»

В данном случае «текст не добавлен» это строка, но на её месте могло бы быть и более сложное выражение, которое бы вычислялось и присваивалось при отсутствии параметра. Например:

В JavaScript параметры по умолчанию вычисляются каждый раз, когда функция вызывается без соответствующего параметра.

Ранние версии JavaScript не поддерживали параметры по умолчанию. Поэтому существуют альтернативные способы, которые могут встречаться в старых скриптах.

Например, явная проверка на undefined :

…Или с помощью оператора || :

Возврат значения

Функция может вернуть результат, который будет передан в вызвавший её код.

Простейшим примером может служить функция сложения двух чисел:

Директива return может находиться в любом месте тела функции. Как только выполнение доходит до этого места, функция останавливается, и значение возвращается в вызвавший её код (присваивается переменной result выше).

Вызовов return может быть несколько, например:

Возможно использовать return и без значения. Это приведёт к немедленному выходу из функции.

Если функция не возвращает значения, это всё равно, как если бы она возвращала undefined :

Пустой return аналогичен return undefined :

Для длинного выражения в return может быть заманчиво разместить его на нескольких отдельных строках, например так:

И тогда всё сработает, как задумано.

Выбор имени функции

Функция – это действие. Поэтому имя функции обычно является глаголом. Оно должно быть простым, точным и описывать действие функции, чтобы программист, который будет читать код, получил верное представление о том, что делает функция.

Как правило, используются глагольные префиксы, обозначающие общий характер действия, после которых следует уточнение. Обычно в командах разработчиков действуют соглашения, касающиеся значений этих префиксов.

Читайте также:  Соотнесите имя древневосточного врачевателя и государство

Например, функции, начинающиеся с «show» обычно что-то показывают.

Функции, начинающиеся с…

Примеры таких имён:

Благодаря префиксам, при первом взгляде на имя функции становится понятным что делает её код, и какое значение она может возвращать.

Функция должна делать только то, что явно подразумевается её названием. И это должно быть одним действием.

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

Несколько примеров, которые нарушают это правило:

В этих примерах использовались общепринятые смыслы префиксов. Конечно, вы в команде можете договориться о других значениях, но обычно они мало отличаются от общепринятых. В любом случае вы и ваша команда должны точно понимать, что значит префикс, что функция с ним может делать, а чего не может.

Имена функций, которые используются очень часто, иногда делают сверхкороткими.

Это исключения. В основном имена функций должны быть в меру краткими и описательными.

Функции == Комментарии

Функции должны быть короткими и делать только что-то одно. Если это что-то большое, имеет смысл разбить функцию на несколько меньших. Иногда следовать этому правилу непросто, но это определённо хорошее правило.

Небольшие функции не только облегчают тестирование и отладку – само существование таких функций выполняет роль хороших комментариев!

Первый вариант использует метку nextPrime :

Второй вариант использует дополнительную функцию isPrime(n) для проверки на простое:

Второй вариант легче для понимания, не правда ли? Вместо куска кода мы видим название действия ( isPrime ). Иногда разработчики называют такой код самодокументируемым.

Таким образом, допустимо создавать функции, даже если мы не планируем повторно использовать их. Такие функции структурируют код и делают его более понятным.

Итого

Объявление функции имеет вид:

Для того, чтобы сделать код более чистым и понятным, рекомендуется использовать локальные переменные и параметры функций, не пользоваться внешними переменными.

Функция, которая получает параметры, работает с ними и затем возвращает результат, гораздо понятнее функции, вызываемой без параметров, но изменяющей внешние переменные, что чревато побочными эффектами.

Функции являются основными строительными блоками скриптов. Мы рассмотрели лишь основы функций в JavaScript, но уже сейчас можем создавать и использовать их. Это только начало пути. Мы будем неоднократно возвращаться к функциям и изучать их всё более и более глубоко.

Задачи

Обязателен ли «else»?

В ином случае она запрашивает подтверждение через confirm и возвращает его результат:

Есть ли хоть одно отличие в поведении этого варианта?

Оба варианта функций работают одинаково, отличий нет.

Перепишите функцию, используя оператор ‘?’ или ‘||’

В ином случае она задаёт вопрос confirm и возвращает его результат.

Сделайте два варианта функции checkAge :

Источник

Функция jQuery() в зависимости от значения аргумента(ов) может выполнять различные действия:

ищет на основе селектора (строки, не начинающейся с ) элементы в DOM-дереве, а затем возвращает их в виде объекта jQuery.

оборачивает DOM-элементы, указанные в качестве аргумента, в объект jQuery.

создаёт DOM-элементы в памяти (на «лету») посредством HTML-строки, переданной в качестве аргумента данной функции.

выполняет указанную функцию, после того как DOM-дерево будет окончательно загружено браузером.

Читайте также:  Академическая дача имени репина

оборачивает простой JavaScript объект, содержащий ноль или более пар «ключ-значение», в объект jQuery.

клонирует объект jQuery (создаёт копию), если его передать в качестве аргумента данной функции.

если аргументы не указывать, то функция jQuery() возвращает пустой jQuery объект.

jQuery(селектор[,контекст])

Функция jQuery(селектор[,контекст]) предназначена для выполнения поиска элементов в DOM-дереве на основании селектора, указанного в качестве 1 аргумента. По умолчанию поиск элементов функция jQuery начинает с корня DOM-дерева (если 2 аргумент не указан). Если же Вам необходимо выполнить поиск элементов внутри определённого контекста, то его необходимо указать во 2 аргументе. В качестве результата данная функция возвращает объект jQuery, содержащий найденные DOM-элементы.

Этот вариант функции jQuery() имеет 2 аргумента:

Например, выберем элементы div с class=»alert» в документе:

jQuery(элемент)

Функция jQuery(элемент) предназначена для того, чтобы обернуть элемент в объект jQuery. Это используется для того, чтобы к DOM-элементу можно было применить различные методы jQuery.

Этот вариант функции jQuery() имеет 1 аргумент:

jQuery(массив_элементов)

Функция jQuery(мaccив_элементов) предназначена для того, чтобы обернуть массив, содержащий набор DOM-элементов, в объект jQuery. Это используют для того, чтобы к набору DOM-элементов можно было применять различные методы jQuery.

Этот вариант функции jQuery() имеет 1 аргумент:

Например, изменить цвет текста у всех элементов p в документе на красный:

jQuery(объект)

Функция jQuery(oбъeкт) предназначена для того, чтобы обернуть простой объект JavaScript (PlainObject), содержащий ноль или более пар «ключ-значение», в объект jQuery.

Этот вариант функции jQuery() имеет 1 аргумент:

jQuery(html[,ownerDocument])

Этот вариант функции jQuery() имеет 2 аргумента:

jQuery(html,attributes)

Функция jQuery(html,attributes) предназначена для создания DOM-элемента с атрибутами. Элемент, который необходимо создать, указывается в первом аргументе посредством HTML-строки (например: «

Этот вариант функции jQuery() имеет 2 аргумента:

Например, создадим элемент

jQuery(callback)

Функция jQuery(callback) выполняет функцию (анонимную или именованную), указанную в качестве аргумента после того, как загрузка DOM-дерева будет завершена браузером.

Этот вариант функции jQuery() имеет 1 аргумент:

Например, выполнить функцию после того, как DOM-дерево станет доступно для использования:

Например, для безопасного выполнения jQuery кода Вы можете использовать следующую конструкцию:

Источник

Функции в JavaScript

Зачастую нам нужно повторять одни и те же действия в разных частях кода JavaScript. Например, иногда требуется передать сообщение при входе пользователя на сайт, при выходе и в других случаях. Чтобы не повторять тот же код множество раз, используют функции (functions). По сути, функции — это основные «строительные кирпичики» программы на JavaScript.

Примеры встроенных функций: • prompt(message, default); • alert(message); • confirm(question).

Однако в JavaScript можно создавать и свои функции.

Объявление функций в JS

Рассмотрим пример создания function для показа сообщений showMessage() :

В вышеприведённом примере ключевое слово — function, которое идёт в самом начале. Потом прописывается имя функции, затем параметры (в скобках), далее — тело функции (код, выполняемый при вызове).

Объявленная таким образом функция будет доступна по имени:

Отображённый код выведет сообщение 2 раза, так как, грубо говоря, выше мы уже сформировали своеобразную ссылку на текст сообщения, в результате чего происходит передача данных. Это демонстрирует нам главную цель создания функций: решение проблемы излишнего дублирования кода в JavaScript. Если же вам понадобится поменять текст либо метод его вызова, это можно сделать лишь в одном месте — в функции, отвечающей за его вызов.

Читайте также:  Монстры на каникулах герои имена

Локальные переменные функции

В функцию могут входить и локальные переменные (объявляются через var). Они видны только внутри функции:

Помните, что блоки while, switch, for, if/else, do..while никак не влияют на зону видимости переменных, то есть при объявлении переменных в данных блоках они будут видны во всей функции. Пример:

При этом неважно, где конкретно в function вы объявляете переменную. Вне зависимости от метода ваших действий объявление сработает одни раз и распространится на всю функцию:

Внешние переменные функции

Функция позволяет вызвать и внешнюю переменную, например:

Доступ возможен на чтение и запись. Но раз переменная внешняя, изменения видны и снаружи функции:

Параметры, которые можно вызвать функцией

При вызове function ей можно отправить данные для обработки. Например, нижеследующий код выведет 2 сообщения:

Помните, что когда код будет передан, параметры скопируются в локальные переменные. Также функцию можно вызвать практически с любым количеством аргументов, а если при вызове параметр не будет передан, он считается равным undefined. К примеру, функцию отображения сообщений showMessage(from, text) можно без проблем вызвать, используя один аргумент:

Выбор имени function

При выборе имён в function применяют те же правила, что и когда выбирают имена переменной. Однако следует помнить, что именем должен быть глагол, ведь функция — это действие. Как правило, в качестве имени используют глагольные префиксы, плюс уточнения.

Функцию, которая что-то показывает, называют show (это лучший вариант для имени):

Запуск function, которая что-то получает, называют get, вычисляет — calc и т. д.

Примеры, каким именем можно назвать функцию:

Использование данного метода названия — удобная штука, ведь, взглянув на функцию, мы примерно поймём, что она делает, какое значение возвращает. И даже если эту функцию написал кто-то другой, вы будете иметь представление о ней.

Остаётся запомнить, что вне зависимости от метода названия, одна функция — это одно действие. Если функция подразумевает поддействия, желательно выделить их в отдельные функции.

Функция jQuery() в JavaScript

Какие задачи решаются с помощью этой функции?

Если параметры не указывать, то function возвращает пустой jQuery-объект.

Функция jQuery(html,attributes)

Function служит для создания DOM-элемента с параметрами. Необходимый элемент указывается в первом аргументе с помощью HTML-строки. Атрибуты к нему указываются во втором аргументе с помощью объекта JavaScript (PlainObject).

Данный способ вызова функции имеет два параметра: • html — обязательный параметр типа htmlString, содержит DOM-элемент; • attributes — необязательный параметр типа PlainObject. Это объект, содержащий атрибуты, методы и события, которые нужно передать создаваемому элементу.

Если пользоваться только одним параметром, элементы создаются для текущего документа. Если хотите создать элементы для другого документа, нужно передавать и 1-й, и 2-й параметры.

Ссылки в JS

В заключении поговорим о ссылке в JavaScript. Под ссылкой будем понимать видимую часть текста или кода, нажатие на которую приведёт к переходу по ней. Рассмотрим три основных метода, в результате применения которых образуется кликабельная ссылка.

Кроме того, можно вызывать ссылку через таблицу, div, ячейку таблицы и путём использования другого метода. Собственно говоря, использование этих методов для передачи ссылок — довольно странное занятие, если вспомнить, что у нас есть простые, эффективные и всем понятные решения с html и php.

Источник

Оцените статью
Имя, Названия, Аббревиатуры, Сокращения
Adblock
detector