Skip to content

JavaScript Yozuv Qoidalari (Style Guide) ​

Barcha JavaScript loyihalaringiz uchun har doim bir xil kodlash konvensiyalaridan foydalaning.


JavaScript kodlash konvensiyalari ​

Kodlash konvensiyalari — bu dasturlash uchun uslub ko'rsatmalari. Ular odatda quyidagilarni qamrab oladi:

  • O'zgaruvchilar va funksiyalar uchun nomlash va e'lon qilish qoidalari
  • Bo'shliq, indent va izohlardan foydalanish qoidalari
  • Dasturlash amaliyotlari va tamoyillari

Kodlash konvensiyalari sifatni ta'minlaydi:

  • Kod o'qilishini yaxshilaydi
  • Kod texnik xizmat ko'rsatishini osonlashtiradi

O'zgaruvchi nomlari ​

Identifikator nomlari (o'zgaruvchilar va funksiyalar) uchun camelCase dan foydalaning. Barcha nomlar harf bilan boshlanadi.

js
firstName = "John";
lastName = "Doe";

price = 19.90;
tax = 0.20;

fullPrice = price + (price * tax);

Operatorlar atrofida bo'shliqlar ​

Operatorlar ( = + - * / ) atrofiga va vergullardan keyin bo'shliq qo'ying:

js
let x = y + z;
const myArray = ["Volvo", "Saab", "Fiat"];

Kod indentatsiyasi ​

Kod bloklari uchun har doim 2 ta bo'shliq ishlating:

js
function toCelsius(fahrenheit) {
  return (5 / 9) * (fahrenheit - 32);
}

Ogohlantirish

Indentatsiya uchun tablardan (tabulyatorlardan) foydalanmang. Turli muharrirlar tablarni turlicha izohlaydi.


Bayonot qoidalari ​

Oddiy bayonotlar uchun umumiy qoidalar:

  • Oddiy bayonotni har doim nuqtali vergul bilan tugatang
js
const cars = ["Volvo", "Saab", "Fiat"];

const person = {
  firstName: "John",
  lastName: "Doe",
  age: 50,
  eyeColor: "blue"
};

Murakkab (qo'shma) bayonotlar uchun umumiy qoidalar:

  • Ochuvchi qavsni birinchi qatorning oxiriga qo'ying
  • Ochuvchi qavsdan oldin bitta bo'shliq ishlating
  • Yopuvchi qavsni yangi qatorga, oldida bo'shliqsiz qo'ying
  • Murakkab bayonotni nuqtali vergul bilan tugatmang
js
// Funksiyalar:
function toCelsius(fahrenheit) {
  return (5 / 9) * (fahrenheit - 32);
}

// Sikllar:
for (let i = 0; i < 5; i++) {
  x += i;
}

// Shartlar:
if (time < 20) {
  greeting = "Good day";
} else {
  greeting = "Good evening";
}

Obyekt qoidalari ​

Obyekt ta'riflari uchun umumiy qoidalar:

  • Ochuvchi qavsni obyekt nomi bilan bir qatorga qo'ying
  • Har bir xususiyat va uning qiymati orasida ikki nuqta va bitta bo'shliq ishlating
  • Satr qiymatlari atrofida qo'shtirnoq ishlating, raqamli qiymatlar atrofida emas
  • Oxirgi xususiyat-qiymat juftligidan keyin vergul qo'shmang
  • Yopuvchi qavsni yangi qatorga, oldida bo'shliqsiz qo'ying
  • Obyekt ta'rifini har doim nuqtali vergul bilan tugatang
js
const person = {
  firstName: "John",
  lastName: "Doe",
  age: 50,
  eyeColor: "blue"
};

Qisqa obyektlar siqilgan holda, bitta qatorda yozilishi mumkin:

js
const person = {firstName:"John", lastName:"Doe", age:50, eyeColor:"blue"};

Qator uzunligi < 80 ​

O'qilish qulayligi uchun 80 belgidan uzun qatorlardan saqlaning. Bayonot bitta qatorga sig'masa, uni operator yoki verguldan keyin buzish eng yaxshi:

js
document.getElementById("demo").innerHTML =
  "Hello Dolly.";

Nomlash konvensiyalari ​

Barcha kodingiz uchun har doim bir xil nomlash konvensiyasidan foydalaning:

  • O'zgaruvchi va funksiya nomlari camelCase da yoziladi
  • Global o'zgaruvchilar KATTA HARF da yoziladi (ixtiyoriy, lekin keng tarqalgan)
  • Konstantalar (masalan PI) KATTA HARF da yoziladi

Chiziqchalar (hyphens): HTML5 atributlari data- bilan boshlanishi mumkin. CSS xususiyat nomlarida chiziqchalar ishlatadi (font-size).

Ogohlantirish

Chiziqchalar ayirish urinishlari bilan aralashtirilishi mumkin. JavaScript nomlarida chiziqchalarga ruxsat berilmaydi.

Pastki chiziq: Ko'pgina dasturchilar pastki chiziqni afzal ko'radilar (date_of_birth).

PascalCase: PascalCase ko'pincha C dasturchilar tomonidan afzal ko'riladi.

camelCase: camelCase JavaScript-ning o'zi, jQuery va boshqa JavaScript kutubxonalari tomonidan ishlatiladi.

Ogohlantirish

Nomlarni $ belgisi bilan boshlamang. Bu sizni ko'pgina JavaScript kutubxona nomlari bilan to'qnashuvga olib keladi.


HTML-da JavaScript-ni yuklash ​

Tashqi skriptlarni yuklash uchun oddiy sintaksisdan foydalaning (type atributi kerak emas):

html
<script src="myscript.js"></script>

Fayl kengaytmalari ​

  • HTML fayllar .html kengaytmasiga ega bo'lishi kerak
  • CSS fayllar .css kengaytmasiga ega bo'lishi kerak
  • JavaScript fayllar .js kengaytmasiga ega bo'lishi kerak

Kichik harfli fayl nomlari ​

Ko'pgina veb-serverlar (Apache, Unix) fayl nomlari bo'yicha katta-kichik harfga sezgir. Muammolardan qochish uchun har doim kichik harfli fayl nomlaridan foydalaning.


Samaradorlik ​

Kodlash konvensiyalari kompyuterlar tomonidan ishlatilmaydi. Ko'pgina qoidalar dasturlar bajarilishiga kam ta'sir qiladi. Ishlab chiqish uchun o'qilish afzal ko'rilishi kerak. Kattaroq ishlab chiqarish skriptlari minimallashtirilishi kerak.