Първи стъпки в JavaScript – част 2

Преди близо месец (извинявам се за голямото закъснение) започнах един урок (Първи стъпки в JavaScript), в който говоря за някои особености на JavaScript. Ориентиран е към хора, които нямат особено голям опит с него.

В този урок ще представим някои основни възможности на JavaScript като език за програмиране. Ако преди сте срещали/работили с други езици за програмиране, тогава в този урок няма да видите нищо ново. Тук ще представим идеята за променливи и константи, а в по-нататъшните части ще поговорим и за условия и цикли.

Променливи и константи

Да започнем от там каква е идеята на една програма. По принцип можем да използваме един език за програмиране за да изпълним поредица от манипулации по предварително зададени данни и да получим резултат. Като пример можем да разгледаме случай, в който трябва да сметнем нещо от рода на 564467 по 654664. Да го правим на ръка е безсмислено, защото е хамалска сметка.

Едно от основните неща, с които програмирането ни помага е да не се занимаваме с хамалски работи.

Всеки един програмен език има вградени възможности за извършване на основни математически операции. За да пресметнем въпросното число, в повечето програмни езици е достатъчно просто да напишем 564467 * 654664.

По принцип това трябва да е съпътствано с команда за извеждане на резултата до потребителя. Иначе компютъра ще си извърши умножението, но то ще си остане някъде в небитието. Ако напишем програмен код, който да пресмята това конкретно произведение, ние няма да сме написали програма. Това е поради причината, че винаги при изпълнението ѝ ние ще получаваме един и същи резултат. Ще имаме нещо, което да смята едно единствено произведение, но още при първото изпълнение кодът ни вече ще е безсмислен. Имаме резултата и няма нужда да изпълняваме втори път програмния код.

Какво трябва да направим тогава, за да имаме истински динамичен код?

Много просто – трябва да използваме променливи. Нека имаме две променливи – a и b, на които да присвоим тези стойности. В JS извършваме това просто с

a = 564467;
b = 654664;

Изписваме името на променливата, последвана от знак за равенство. Накрая изписваме стойността, която искаме на присвоим на променливата.

Още нещо за JavaScript е поставянето на точка и запетая (;) на края на всяка инструкция. Както в нормалния език на края на изречението ние поставяме точка, така в JS се поставя точка и запетая. Бихме могли двете инструкции да ги въведем на един ред, стига да имаме правилното разделение с ;. За по-добра четимост обаче изписваме всяка инструкция на отделен ред.

След като вече имаме дефинирани променливи ние можем да извършваме действия с тях. За момента нашият код все още няма да върши никаква работа. Разбира се, че в програмните езици има начин на променливи да се зададе стойност идваща от потребителя. До там обаче ще стигнем по-късно. Нека за момента приемаме, че всеки път, когато имаме променлива тя би могла да има различна стойност.

Идеята за името им идва и от факта, че стойността им би могла да се променя в хода на изпълнение на програмния код. Да речем, че в един момент можем да зададем стойност 1 на променливата a, а по-късно да променим това на 2.

Константи

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

03.02.2019: Урокът оригинално е писан отдавна и това вече не е 100% вярно. В последните версии на JavaScript вече има константи. Те обаче все още не се поддържат от всички браузъри, затова пак още не са се наложили.

Константите имат различни приложения в програмните езици. Едно от тях е съкращаване на изписването. Да речем, че трябва да напишем програма за пресмятане на периметър на окръжност. За това имаме нужда от числото Пи. Всеки, който е завършил трети клас трябва да знае, че Пи (с точност до втория знак, след десетичната запетая) е 3.14. Аз лично наизуст го знам до 3.141593. Да речем, че за програмата го искаме с още по-голяма точност. В някой справочник можем да проверим стойността му и в програмния си код да използваме 3.141592653589793.

Представете си сега, че имаме нужда да използваме числото Пи на няколко места. Няма да е удобно всеки път да изписваме всичко това. По-добре би било да го запишем в променлива. Тъй като стойността на числото Пи винаги е една и съща би било по-добре да го запишем дори в константа.

Но в JavaScript нямаме константи. Така че пак оставаме с променлива. Просто самите ние помним, че не е редно да я презаписваме.

Съществува конвенция (масово приет стил) променливите в JavaScript (и не само в JS), които са със смисъл на константи, да бъдат изписвани изцяло с главни букви. Така че бихме могли да имаме:

PI = 3.141592653589793;

Вградени константи

Тъй като числото Пи обаче е често срещана константа, в JavaScript тя е предварително дефинирана. Можем да я достъпим просто чрез Math.PI. Там числото се съдържа именно със стойността, която изписах по-горе (от там я взех).

Да използваме тази константа е дори още по-добре, тъй като JavaScript се изпълнява така от браузърите, че всъщност не можем да променим стойността на Math.PI. Тя си е напълно реална константа. Ако се опитаме няма да получим грешка, но и стойността няма да се промени.

alert(Math.PI); // стойността е 3.141592653589793
Math.PI = 3.14; // няма да излезе грешка
alert(Math.PI) // стойността пак е 3.141592653589793

Нека поясним, че:

  • alert() изкарва едно малко прозорче със съобщението в скобите
  • с две наклонени линии (//) изразяваме коментар

Говорили сме за коментари в HTML и CSS. При JavaScript коментарите се пренебрегват от интерпретатора. Би трябвало да разбирате, че това, което кодът по-гори прави е следното:

  1. Показваме прозорец, изписващ стойността на Math.PI, която е 3.141592653589793
  2. Присвояваме друга стойност на Math.PI
  3. Показваме нов прозорец, който би трябвало да изведе новата стойност на Math.PI, но тъй като това е вградена в езика константа, отново виждаме 3.141592653589793

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

Съществуват и други случаи, в които е уместно използването на константи. Тях ще ги разгледаме когато са ни необходими.

Един отговор за “Първи стъпки в JavaScript – част 2”

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

Вашият имейл адрес няма да бъде публикуван. Задължителните полета са отбелязани с *

Този сайт използва Akismet за намаляване на спама. Научете как се обработват данните ви за коментари.