Сборка от 17 марта 2017 г



Download 9,9 Mb.
bet54/349
Sana26.04.2022
Hajmi9,9 Mb.
#582433
TuriУчебник
1   ...   50   51   52   53   54   55   56   57   ...   349
Bog'liq
ilja kantor sovremennyj uchebnik-1chast PdfToWord

Аргументы по умолчанию


Функцию можно вызвать с любым количеством аргументов.


Если параметр не передан при вызове – он считается равным undefined .


Например, функцию показа сообщения showMessage(from, text) можно вызвать с одним аргументом:

showMessage("Маша");


При этом можно проверить, и если параметр не передан – присвоить ему значение «по умолчанию»:




function showMessage(from, text) { if (text === undefined) {
text = 'текст не передан';
}

alert( from + ": " + text );


}


showMessage("Маша", "Привет!"); // Маша: Привет!
showMessage("Маша"); // Маша: текст не передан


При объявлении функции необязательные аргументы, как правило, располагают в конце списка.

Для указания значения «по умолчанию», то есть, такого, которое используется, если аргумент не указан, используется два способа:





  1. Можно проверить, равен ли аргумент undefined , и если да – то записать в него значение по умолчанию. Этот способ продемонстрирован в примере выше.

  2. Использовать оператор || :

function showMessage(from, text) { text = text || 'текст не передан';


...
}


Второй способ считает, что аргумент отсутствует, если передана пустая строка, 0 , или вообще любое значение, которое в логическом контексте является false .


Если аргументов передано больше, чем надо, например showMessage("Маша", "привет", 1, 2, 3) , то ошибки не будет. Но, чтобы получить такие


«лишние» аргументы, нужно будет прочитать их из специального объекта arguments , который мы рассмотрим в главе Псевдомассив аргументов "arguments".


Возврат значения


Функция может возвратить результат, который будет передан в вызвавший её код.


Например, создадим функцию calcD , которая будет возвращать дискриминант квадратного уравнения по формуле b2 – 4ac :

return
function calcD(a, b, c) {
b*b ‐ 4*a*c;
}

var test = calcD(‐4, 2, 1);


alert(test); // 20


Для возврата значения используется директива return .

Она может находиться в любом месте функции. Как только до неё доходит управление – функция завершается и значение передается обратно. Вызовов return может быть и несколько, например:


function checkAge(age) { if (age > 18) {


return true;
} else {
return confirm('Родители разрешили?');
}
}
var age = prompt('Ваш возраст?'); if (checkAge(age)) {
alert( 'Доступ разрешен' );
} else {
alert( 'В доступе отказано' );
}

Директива return может также использоваться без значения, чтобы прекратить выполнение и выйти из функции. Например:


function showMovie(age) {


if (!checkAge(age)) { return;
}

alert( "Фильм не для всех" ); // (*)


// ...
}

В коде выше, если сработал if , то строка (*) и весь код под ней никогда не выполнится, так как return завершает выполнение функции.






Download 9,9 Mb.

Do'stlaringiz bilan baham:
1   ...   50   51   52   53   54   55   56   57   ...   349




Ma'lumotlar bazasi mualliflik huquqi bilan himoyalangan ©hozir.org 2024
ma'muriyatiga murojaat qiling

kiriting | ro'yxatdan o'tish
    Bosh sahifa
юртда тантана
Боғда битган
Бугун юртда
Эшитганлар жилманглар
Эшитмадим деманглар
битган бодомлар
Yangiariq tumani
qitish marakazi
Raqamli texnologiyalar
ilishida muhokamadan
tasdiqqa tavsiya
tavsiya etilgan
iqtisodiyot kafedrasi
steiermarkischen landesregierung
asarlaringizni yuboring
o'zingizning asarlaringizni
Iltimos faqat
faqat o'zingizning
steierm rkischen
landesregierung fachabteilung
rkischen landesregierung
hamshira loyihasi
loyihasi mavsum
faolyatining oqibatlari
asosiy adabiyotlar
fakulteti ahborot
ahborot havfsizligi
havfsizligi kafedrasi
fanidan bo’yicha
fakulteti iqtisodiyot
boshqaruv fakulteti
chiqarishda boshqaruv
ishlab chiqarishda
iqtisodiyot fakultet
multiservis tarmoqlari
fanidan asosiy
Uzbek fanidan
mavzulari potok
asosidagi multiservis
'aliyyil a'ziym
billahil 'aliyyil
illaa billahil
quvvata illaa
falah' deganida
Kompyuter savodxonligi
bo’yicha mustaqil
'alal falah'
Hayya 'alal
'alas soloh
Hayya 'alas
mavsum boyicha


yuklab olish