JavaScript Функции
JavaScript функция - это блок кода, предназначенный для выполнения конкретной задачи.
JavaScript функция выполняется, когда "что-то" вызывает её.
Пример
function myFunction(p1, p2) {
return p1 * p2;
// Функция возвращает произведение p1 и p2
}
Попробуйте сами »
JavaScript Синтаксис функции
JavaScript функция определяется с помощью ключевого слова function
, за которым следует имя, за которым следуют скобки ().
Имена функций могут содержать буквы, цифры, подчеркивания и знаки доллара (те же правила, что и для переменных).
Круглые скобки могут включать имена параметров, разделенные запятыми:
(параметр1, параметр2, ...)
Код, который должен быть выполнен функцией, помещен в фигурные скобки: {}
function имя(параметр1, параметр2, параметр3) {
// код для выполнения
}
Параметры функции указаны в скобках () в определении функции.
Аргументы функции - это значения, полученные функцией при её вызове.
Внутри функции аргументы (параметры) ведут себя как локальные переменные.
Функция во многом совпадает с процедурой или подпрограммой в других языках программирования.
Вызов функции
Код внутри функции будет выполняться, когда 'что-то' вызывает функцию (обращается к функции):
- Когда происходит событие (когда пользователь нажимает кнопку)
- Когда она вызывается (обращаются) из кода JavaScript
- Автоматически (самостоятельно вызывается)
Вы узнаете намного больше о вызове функций позже в этом учебнике.
Возврат функции
Когда JavaScript достигает объявления return
, функция прекращает выполнение.
Если функция была вызвана из объявления, JavaScript 'вернётся' для выполнения кода после вызова объявления.
Функции часто вычисляют возвращаемое значение. Возвращаемое значение "возвращается" обратно "вызывающему":
Пример
Рассчитайте произведение двух чисел и верните результат:
var x = myFunction(4, 3); // Функция вызывается, возвращаемое значение заканчивается в x
function myFunction(a, b) {
return a * b;
// Функция возвращает произведение a и b
}
Результат в х будет:
12
Почему функции?
Вы можете повторно использовать код: определите код один раз и используйте его много раз.
Вы можете использовать один и тот же код много раз с разными аргументами, чтобы получить разные результаты.
Пример
Перевести Фаренгейты в градусы Цельсия:
function toCelsius(fahrenheit) {
return (5/9) * (fahrenheit-32);
}
document.getElementById("demo").innerHTML = toCelsius(77);
Попробуйте сами »
Оператор () вызывает функцию
Используя приведенный выше пример, toCelsius
ссылается на объект функции, а
toCelsius()
ссылается на результат функции.
Доступ к функции без () вернет определение функции вместо результата функции:
Пример
function toCelsius(fahrenheit) {
return (5/9) * (fahrenheit-32);
}
document.getElementById("demo").innerHTML = toCelsius;
Попробуйте сами »
Функции, используемые в качестве переменных
Функции можно использовать так же, как вы используете переменные, во всех типах формул, назначений и вычислений.
Пример
Вместо использования переменной для хранения возвращаемого значения функции:
var x = toCelsius(77);
var text = "Температура " + x + " Цельсия";
Вы можете использовать функцию напрямую, как значение переменной:
var text = "Температура " + toCelsius(77) + " Цельсия";
Попробуйте сами »
Позже в JavaScript-учебнике на нашем сайте W3Schools на русском вы узнаете намного больше о функциях в языке JavaScript.
Локальные переменные
Переменные, объявленные в функции JavaScript, становятся LOCAL для функции.
Доступ к локальным переменным возможен только из функции.
Пример
// код здесь НЕ может использовать carName
function myFunction() {
var carName = "Volvo";
// код здесь МОЖЕТ использовать carName
}
// код здесь НЕ может использовать carName
Попробуйте сами »
Поскольку локальные переменные распознаются только внутри их функций, переменные с одинаковым именем могут использоваться в разных функциях.
Локальные переменные создаются при запуске функции и удаляются по завершении функции.