Последние учебники веб-разработки
×

JS Руководство

JS ГЛАВНАЯ JS Введение JS Куда JS Вывод JS Синтаксис JS Заявления JS Комментарии JS переменные JS операторы JS арифметика JS присваивание JS Типы данных JS функции JS Объекты JS Объем JS Мероприятия JS Строки JS Методы струнных JS чисел JS Методы Number JS математический JS Даты JS Форматы даты JS Методы Дата JS Массивы JS Методы массивов JS Booleans JS Сравнения JS условия JS переключатель JS петля For JS В то время как Loop JS Ломать JS Тип преобразования JS RegExp JS ошибки JS отладка JS Подъемно JS Строгий режим JS Гид по стилю JS Лучшие практики JS Ошибки JS Представление JS Зарезервированные слова JS JSON

JS формы

Формы проверки Формы API

JS объект

Определения объектов Свойства объекта Методы объекта Прототипы объектов

JS функции

Определения функций Функциональные параметры Функция Призвание Функция Затворы

JS HTML DOM

DOM вступление DOM методы DOM Документ DOM элементы DOM HTML DOM CSS DOM Анимации DOM Мероприятия DOM EventListener DOM навигация DOM Вершины DOM Nodelist

JS браузер BOM

JS Window JS Screen JS Location JS History JS Navigator JS Popup Alert JS Timing JS Cookies

JS Примеры

JS Примеры JS HTML DOM JS HTML вход JS HTML Объекты JS HTML Мероприятия JS браузер JS викторина JS Резюме

JS Рекомендации

JavaScript Объекты HTML DOM Объекты


 

JavaScript Определения функций


Функции JavaScript определяются с function ключевого слова.

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


Функциональные декларации

Ранее в этом учебнике вы узнали , что функции объявлены со следующим синтаксисом:

function functionName ( parameters ) {
  code to be executed
}

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

пример

function myFunction(a, b) {
    return a * b;
}
Попробуй сам "

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


Функциональные выражения

Функция JavaScript также может быть определена с помощью выражения.

Выражение функция может быть сохранено в переменной:

пример

var x = function (a, b) {return a * b};
Попробуй сам "

После того, как выражение функция сохранена в переменной, переменная может быть использована в качестве функции:

пример

var x = function (a, b) {return a * b};
var z = x(4, 3);
Попробуй сам "

Функция выше фактически является анонимная функция (функция без имени).

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

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


Function() Конструктор

Как вы уже видели в предыдущих примерах, функции JavaScript определяются с function ключевого слова.

Функции также могут быть определены с помощью встроенной в JavaScript функции конструктора под названием Function() .

пример

var myFunction = new Function("a", "b", "return a * b");

var x = myFunction(4, 3);
Попробуй сам "

На самом деле вы не должны использовать функцию конструктора. В приведенном выше примере такой же, как письма:

пример

var myFunction = function (a, b) {return a * b};

var x = myFunction(4, 3);
Попробуй сам "

Большую часть времени, вы можете избежать с помощью new ключевого слова в JavaScript.


Function Hoisting

Ранее в этом учебнике вы узнали о "hoisting" .

Подъемно это поведение в JavaScript по умолчанию перемещения деклараций к началу текущей области.

Подъемно относится к объявления переменных и объявлений функций.

Из-за этого, функции JavaScript можно назвать, прежде чем они объявлены:

myFunction(5);

function myFunction(y) {
    return y * y;
}

Функции, определенные с помощью выражения не водрузили.


Самоосуществляющийся Функции

Функциональные выражения могут быть сделаны "самоосуществляющийся".

Самостоятельно вызова выражение вызывается (начало) автоматически, без вызова.

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

Вы не можете самостоятельно вызывать функцию декларации.

Вы должны добавить круглые скобки вокруг функции, чтобы указать, что это выражение функции:

пример

(function () {
    var x = "Hello!!";      // I will invoke myself
})();
Попробуй сам "

Функция выше фактически является анонимным самоосуществляющийся функция (функция без имени).


Функции могут быть использованы как значения

JavaScript функции могут быть использованы в качестве значений:

пример

function myFunction(a, b) {
    return a * b;
}

var x = myFunction(4, 3);
Попробуй сам "

JavaScript функции могут быть использованы в выражениях:

пример

function myFunction(a, b) {
    return a * b;
}

var x = myFunction(4, 3) * 2;
Попробуй сам "

Функции являются объектами

typeof оператор в JavaScript возвращает "function" для функций.

Но функции JavaScript лучше всего можно описать как объекты.

JavaScript функции имеют оба свойства и методы.

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

пример

function myFunction(a, b) {
    return arguments.length;
}
Попробуй сам "

toString() метод возвращает функцию в виде строки:

пример

function myFunction(a, b) {
    return a * b;
}

var txt = myFunction.toString();
Попробуй сам "

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