Функции

Функциите в javascript са блокове от код, които първо се дефинират, а след това се изпълняват. Структурата им е следната :

function name() {
оператори
}

..където name е името на функцията, последвано от отваряща и затваряща кръгла скоба, които могат да съдържат аргументи, но може и да са празни. Най-накрая е тялото на функцията заградено с фигурни скоби.

  • Това дефиниране на функцията става в главата (HEAD) на HTML документа, а извикването на функцията става в тялото (BODY) на HTML документа, чрез изписване на нейното име и аргументи (ако има такива).
  • Вижте един пример за функция без аргументи:

 

<HTML
<HEAD>

<SCRIPT LANGUAGE=“JavaScript“>
function firstName() {
name=prompt(„Как се казвате ?“)
alert(„Здравейте“+name)
}
</SCRIPT>
<BODY>
<SCRIPT LANGUAGE=“Javascript“>
firstName()
</SCRIPT>
</BODY>
</HTML>

  • В главата на документа се дефинира функция с име firstName без аргументи, която изпълнява следното: на променливата name се присвоява стойността, която ще напишете в подканващия прозорец „Как се казвате ?„. След това в alert прозорец ще се изпише съобщението „Здравейте+ името което сте въвели. Веднъж дефинирана функцията може да се извиква навсякъде в тялото на HTML документа само чрез името й. 
  • Нека да направим една функция с аргументи:

<HTML
<HEAD>

<SCRIPT LANGUAGE=“JavaScript“>
function fontSize(num) {
document.write(„<font size=“+num+“>“)
document.write(num)
document.write(„</font>“)
}
</SCRIPT>
<BODY>
<SCRIPT LANGUAGE=“Javascript“>
for(num=1;num<=7;num++) {
fontSize(num)
}
</SCRIPT>
</BODY>
</HTML>

  • Тук имаме функция fontSize с един аргумент (num), която изписва  HTML тага <FONT SIZE=.…. след това слага стойността на променливата num, и накрая затваря тага >.
  • На следващия ред се изписва самата променлива num.
  • И най-накрая се изкарва затварящия таг </FONT>.
  • Не забравяйте че когато пишете HTML тагове с document.write те не се изписват на екрана, а се изпълняват като истински HTML тагове. Самата функция сама по себе си е безполезна, ако не дадем някакви стойности на променливата num. Това го правим с друг скрипт в тялото на документа. В него използваме цикъл с който задаваме стойноста на num на единица. След това се проверява дали num не е по малко или равно на 7, и ако е така стойността се увеличава с едно. В  тялото на цикъла се извиква функцията fontSize.

Нека проследим стъпка по стъпка изпълнението на функцията :

  • Първо на num се задава стойност 1. След това се извиква функцията с параметър 1 (fontSize(num)). Самата функция изпълнява HTML тага : <font size=1> 1 </font>. Така на екрана се изписва цифрата 1 (стойността на num в момента на изпълнението на функцията) с големина на шрифта 1 (font size=1).
  • При следващото завъртане на цикъла стойността на num ще бъде вече 2 (num++) и функцията ще изпише цифрата 2 с големина на шрифта 2.

……..и така до num=7 където цифрата седем ще се изпише с най-големият размер на шрифта – 7. 

    Можете да създавате функции с повече от един аргумент. В  такъв случай аргументите се разделят със запетаи:

function argument(arg1, arg2, arg3)

  • Когато създавате такава функция, при всяко нейно викане трябва да задавате същия брой аргументи, както когато сте я дефинирали.
  • Правилата за създаване на имена на функциите са същите като при променливите.
  • Хубаво е ако името на функцията съдържа повече от една дума, първата дума да се изписва с малки букви, а всички останали да започват с главна буква, например  fontSize.

Вашият коментар