В этой статье описывается использование анонимных функций в JavaScript. Поделитесь этим для вашей ссылки. Конкретный анализ заключается в следующем:
краткое содержание:
В этой статье объясняется самая основная и важная вещь о функциях JavaScript. Причина, по которой я написал эту статью, заключается в том, что я спросил ее во время интервью, что также считается пересмотром прошлого и изучена новым.
Давайте сначала приведем пример. Если вы это понимаете, это означает, что вы поняли, о чем расскажет эта статья.
Скопируйте код следующим образом: var f = (function () {
Функция f () {return 10;}
return f ();
Функция f () {return 20;}
var f = 30;
}) ();
console.log (f);
В JavaScript Advanced Programming функции описаны таким образом - они могут инкапсулировать любое количество операторов и могут быть вызваны и выполнены в любом месте и в любое время. Я вводил строгий режим ранее, и в строгом режиме есть некоторые ограничения на функции:
① Функция не может быть названа eval или аргументами
② Параметры не могут быть названы как Aval или аргументы
③ Два названных параметра не могут быть одинаковым именем
Вышеупомянутая ситуация приведет к ошибкам синтаксиса, и код не будет выполнен.
Определение функции
Определения функций разделены на три типа
1. Конструктор
Кода кода следующая: var fun = new funciton ();
2. Обычное определение
Скопируйте код следующим образом: function fun () {}
3. Функциональное определение
Кода кода выглядит следующим образом: var fun = function () {};
Все три способа могут определить функцию веселья.
параметр
Функции не возражают против того, сколько параметров передается, и при этом они не заботятся о том, какие данные типа данных передаются. Даже если функция, которую вы определяете, получает только два параметра, вы не обязательно передаете два параметра при вызове этой функции. Один или три могут быть переданы или даже без параметров. Причина в том, что параметры представлены внутренне массивом. В корпусе функции вы можете получить доступ к массиве параметров через объект Arguments, например,
Скопируйте код следующим образом: function sayshi () {
Alert ("Hello" + аргументы [0] + "," + аргументы [1]);
}
Доступа к свойству длины объекта аргументов, мы можем знать, сколько есть параметры. Длина функции вернет количество параметров функции.
ПРИМЕЧАНИЕ. Все параметры проходят значения, и невозможно передавать параметры с помощью ссылок.
Функции не могут быть перегружены, их можно только переписать.
Если определены две функции с одинаковым именем, имя принадлежит последней определенной функции, например:
Кода -копия выглядит следующим образом:
функция добавить (num) {
вернуть num + 100;
}
функция добавить (num) {
вернуть num + 200;
}
var result = add (100) // 300
Примечание. Функция останавливается и выходит сразу после выполнения оператора возврата.
Типы функций
Функции разделены на два типа: функция имени и анонимная функция. Например, следующая известная функция
Скопируйте код следующим образом: function fun () {
}
Если вы называете, нужно просто FUN ().
Анонимные функции, как следует из названия, не имеют имен функций. Например
function () {}
Вызовы функций вызываются через имена функций. Как вызвать анонимные функции? Одним из них является назначение анонимной функции переменной, позволяя этой переменной действовать как имя функции. Другой способ - использовать (), чтобы назвать его, например, следующие три метода
1. (Function () {return;} ());
2. (function () {return;}) ();
3. function () {return;} ();
пример:
Кода -копия выглядит следующим образом:
(function (x, y) {
Оповещение (x + y);
}) (2,3);
// предупреждение (5)
2 и 3 будут переданы в качестве параметров для x и y
Давайте поговорим о главном примере. Этот пример включает закрытие, которое будет обсуждаться позже.
Сначала определите переменную F, а затем назначьте анонимную функцию. Здесь мы должны отметить, что определения всех переменных в функции будут предусмотрены, поэтому порядок выполнения в анонимной функции.
Кода -копия выглядит следующим образом:
var f = (function () {
Var f = 30;
Функция f () {return 10;}
Функция f () {return 20;}
return f ();
}) ();
Внешняя переменная F и внутренняя переменная F не находятся в одном и том же прицеле (закрытие), поэтому они не влияют друг на друга. Поскольку функция не может быть перегружена, внешняя переменная f = (function f () {return 20;}) ();, поэтому конечный выход равен 20.
Я надеюсь, что эта статья будет полезна для каждого программирования JavaScript.