Гузариш ба мундариҷа
Мавзӯи 1 аз 16
Назария

Барномаи аввал

Ин барои чӣ лозим аст

JavaScript (кӯтоҳ — JS) — забонест, ки сайтҳоро «зинда» мекунад. Тугмаҳо, менюҳо, бозиҳо дар браузер, чатҳо, харитаҳои онлайн — ҳамаи ин JavaScript аст. Он дар ҳар браузер кор мекунад, бинобар ин ҳеҷ чизро насб кардан лозим нест. Ҳамчунин бо JS серверҳо (Node.js), барномаҳои мобилӣ ва мизи корӣ менависанд.

HTML тасвир мекунад, ки дар саҳифа чӣ ҳаст, CSS — он чӣ гуна менамояд, ва JavaScript — ҳангоми амалҳои корбар чӣ рӯй медиҳад. Дар ин курс мо худи забонро меомӯзем: тағйирёбандаҳо, шартҳо, даврҳо, функсияҳо, массивҳо ва объектҳо. Ин асоси ҳама чизи дигар аст.

Барнома — фармонҳо бо тартиб

Барнома — рӯйхати фармонҳоест, ки компютер аз боло ба поён яке паси дигар иҷро мекунад. Фармони аввале, ки меомӯзем, — console.log(...). Он чизеро, ки дар қавс аст, мебарорад (чоп мекунад).

console.log("Салом!");
console.log("Ман JavaScript меомӯзам");

Натиҷа:

Салом!
Ман JavaScript меомӯзам

Ҳар console.log аз сатри нав чоп мекунад. Дар сайт натиҷа зери муҳаррири код пайдо мешавад, ва дар браузер онро дар ҷадвалаки «Console»-и абзорҳои таҳиягар (тугмаи F12) дидан мумкин аст.

Сатрҳо ва ададҳо

Матн дар барнома сатр (string) номида мешавад. Сатрро ҳатман дар нохунак мегиранд: дукаратаи "…", якказаи '…' ё баръакс `…` — ҳоло фарқе нест.

Ададҳоро бе нохунак менависанд, ва бо онҳо ҳисоб кардан мумкин аст:

console.log(2 + 3);
console.log("2 + 3");
console.log(10 * 4 - 5);

Натиҷа:

5
2 + 3
35

Фарқро мебинед? 2 + 3 бе нохунак — ҳисоб аст, вале "2 + 3" дар нохунак — танҳо матн. Аломатҳои амал: + ҷамъ, - тарҳ, * зарб, / тақсим.

Якчанд қимат якбора

Ба console.log якчанд қиматро бо вергул додан мумкин аст — онҳо дар як сатр бо фосила чоп мешаванд:

console.log("Соатҳо дар шабонарӯз:", 24);
console.log("Дақиқаҳо дар соат:", 60, "Сонияҳо дар дақиқа:", 60);

Натиҷа:

Соатҳо дар шабонарӯз: 24
Дақиқаҳо дар соат: 60 Сонияҳо дар дақиқа: 60

Шарҳҳо

Шарҳ (comment) — қайд барои одам. JavaScript онро пурра нодида мегирад.

// Шарҳи яксатра: ҳама чиз баъд аз ду хати моил то охири сатр
console.log("Кор мекунад"); // дар охири сатр ҳам мумкин аст

/* Шарҳи
   бисёрсатра */

Шарҳҳоро барои фаҳмонидани ҷойи душвор ё муваққатан «хомӯш кардан»-и сатри код бе нест кардани он истифода мебаранд.

Нуқта-вергул

Фармонҳоро одатан бо нуқта-вергул ; анҷом медиҳанд. Аксар вақт JS онҳоро худ мегузорад, аммо беҳтар аст ошкоро нависед — ногаҳониҳо камтар мешаванд, ва аксари барномасозон ҳамин тавр менависанд.

Дар дохил чӣ гуна кор мекунад

Вақте ки шумо «Иҷро»-ро пахш мекунед, браузер матни барномаро ба муҳаррики JavaScript (дар Chrome онро V8 меноманд) медиҳад. Муҳаррик кодро мехонад, тафтиш мекунад, ки он мувофиқи қоидаҳо навишта шудааст, ва фармонҳоро бо тартиб иҷро мекунад. Агар дар код хато бошад — масалан, нохунак фаромӯш шуда бошад — муҳаррик меистад ва паёми хаторо нишон медиҳад (SyntaxError). Ин муқаррарист: хатоҳо роҳи асосии омӯхтан мебошанд.

Хатоҳои маъмул

  1. Матн бе нохунак. console.log(Салом) — JS фикр мекунад, ки Салом номи тағйирёбанда аст, ва ReferenceError: Салом is not defined медиҳад. Лозим аст console.log("Салом").
  2. Нохунакҳои гуногун. "Салом' — сатр бо як нохунак кушода ва бо дигараш баста шудааст. Ин SyntaxError аст.
  3. Ҳарфи калон. Console.log ё console.Log кор намекунад: JavaScript ҳарфҳои калон ва хурдро фарқ мекунад.
  4. Адад дар нохунак. console.log("2" + "2") 22 мебарорад — ин пайваст кардани сатрҳост, на ҷамъ.
  5. Фосила ё аломати зиёдатӣ дар натиҷа. Ҳангоми санҷиш натиҷа аниқ муқоиса мешавад: Hello,World! ва Hello, World! — сатрҳои гуногунанд.

Ёддошт

Чӣ Чӣ тавр
Баровардани матн console.log("матн");
Баровардани натиҷа console.log(2 + 3); → 5
Якчанд қимат console.log("Ҳамагӣ:", 5); → Ҳамагӣ: 5
Шарҳи сатрӣ // қайд
Шарҳи бисёрсатра /* … */
Амалҳо + - * /

Hello, World!

Осон+10 XP

Ба консол маҳз як сатр бароред:

Hello, World!

Барои ҳал кардани масъалаҳо коннекторро пайваст кун

Коди масъалаҳо дар компютери худат иҷро мешавад — ин аз браузер тезтар ва боэътимодтар аст. Барои ин барномаи ройгони коннектори CodeWithMe лозим аст. Онро як бор пайваст кардан кифоя аст.

Коннекторро дар ин компютер ҷустуҷӯ мекунем…

  1. 1
    Коннекторро барои системаи худ (Windows, macOS ё Linux) зеркашӣ кун.Зеркашии коннекторДар саҳифаи зеркашӣ файлеро интихоб кун, ки дар номаш системаи ту ҳаст, масалан windows-amd64.
  2. 2Онро иҷро кун ва ҷузвдонеро интихоб кун, ки ҳалҳоят дар он ҷо меистанд. Python ва Node.js-ро ӯ худаш ҳангоми зарурат ба он ҷо мегузорад.
  3. 3
    Дар поён рамзи 6-рақамаро ворид кун — он дар равзанаи коннектор навишта шудааст («Рамз барои сайти CodeWithMe»). Агар браузер дар бораи дастрасӣ ба шабакаи маҳаллӣ пурсад — иҷозат деҳ.

Коннектор кушода аст (рамзи манбаъ дар GitHub), танҳо дар компютери ту кор мекунад ва кодро танҳо пас аз ворид кардани рамзи пайвастшавӣ иҷро мекунад.