Функция JavaScript не выполняет какую-либо проверку на значениях параметров (аргументов).
Function Parameters и Arguments
Ранее в этом учебнике вы узнали , что функции могут иметь parameters :
functionName ( parameter1, parameter2, parameter3 ) {
code to be executed
}
Function parameters являются имена , перечисленные в определении функции.
Function arguments реальные значения , переданные (и полученные) функции.
Правила параметров
определения функций JavaScript не указать типы данных для параметров.
Функции JavaScript не выполняют проверку типов на переданных аргументов.
Функции JavaScript не проверяют количество аргументов, полученных.
Параметр Значения по умолчанию
Если функция вызывается с отсутствующими аргументами (меньше , чем объявлена), отсутствующие значения устанавливаются: не определено
Иногда это приемлемо, но иногда лучше, чтобы присвоить значение по умолчанию для параметра:
Если функция вызывается слишком большим количеством аргументов (больше , чем декларируется), эти аргументы могут быть достигнуты с помощью объекта аргументов.
Аргументы Object
Функции JavaScript имеют встроенный объект называется объект аргументы.
Объект аргумент содержит массив аргументов, используемых при функция была вызвана (вызывается).
Таким образом, вы можете просто использовать функцию, чтобы найти (например) от наибольшего значения в списке номеров:
пример
x = findMax(1, 123, 500, 115, 44, 88);
function findMax() {
var i;
var max = -Infinity;
for (i = 0; i < arguments.length; i++) {
if (arguments[i] > max) {
max = arguments[i];
}
}
return max;
}
Попробуй сам " Или создать функцию, чтобы суммировать все входные значения:
пример
x = sumAll(1, 123, 500, 115, 44, 88);
function sumAll() {
var i, sum = 0;
for (i = 0; i < arguments.length; i++) {
sum += arguments[i];
}
return sum;
}
Попробуй сам " Аргументы передаются по значению
Параметры, при вызове функции, аргументы функции.
Аргументы JavaScript передаются по значению: Функция получает только знать значения, а не в расположениях аргумента.
Если функция изменяет значение аргумента, он не изменяет исходное значение параметра.
Изменения аргументы не видны (отражение) вне функции.
Объекты передаются по ссылке
В JavaScript, ссылки на объект значения.
Из - за этого, объекты будут вести себя , как они передаются по ссылке:
Если функция изменяет свойство объекта, он изменяет исходное значение.
Изменения свойства объекта видны (отражение) вне функции.