Во многих объектно-ориентированных языках высокого уровня существует перегрузка методов. И JavaScript не имеет концепции перегрузки метода. Но мы можем использовать параметр аргументов для маскировки перегрузки функции
Перед симуляцией давайте посмотрим на код:
Кода -копия выглядит следующим образом:
// нет функции, которая объявляет формальные параметры на поверхности
function fun () {
оповещение («Пример кода»);
}
Веселье ("Xiao Ming", 100, True); // Я сам написал три фактических параметра
Через результаты мы видим, что даже если мы не определяем формальные параметры при объявлении функции, мы можем написать фактические параметры при вызове метода. (Фактически, формальные параметры читаются при написании программистам для вызова функций)
Можем ли мы получить фактические параметры в коде? Ответ - да: см. Код:
Кода -копия выглядит следующим образом:
// нет функции, которая объявляет формальные параметры на поверхности
function fun () {
Alert (аргументы [0]); // Получить значение первого фактического параметра.
оповещение (аргументы [1]); // Получить значение второго фактического параметра.
оповещение (аргументы [2]); // Получить значение третьего фактического параметра.
Alert (Arguments.length); // Получить количество фактических параметров.
оповещение («Пример кода»);
}
Веселье ("Xiao Ming", 100, True); // Я сам написал три фактических параметра
Через код мы можем знать, что аргументы (внутренние свойства) сами являются массивом, и их функция состоит в том, чтобы хранить фактические параметры метода.
С вышеуказанными пунктами знаний будут идеи для перезагрузки метода моделирования. Мы можем вынести суждение на основе количества фактических параметров, чтобы выполнять различные логические коды. Простой код заключается в следующем:
Кода -копия выглядит следующим образом:
function fun () {
if (arguments.length == 0) {
Alert («Выполнить код без фактических параметров»);
}
иначе if (arguments.length == 1)
{
Alert («Выполнить код, проходящий в фактическом параметре»);
}
иначе if (arguments.length == 2)
{
Alert («Выполнить код прохождения в двух фактических параметрах»);
}
}
веселье();
Веселье ("Сяо Мин");
Веселье ("Сяо Мин", "Сяо Хуа");