JavaScript Matnlar (Strings)
Matnlar (Strings) — bu matnli ma'lumotlarni saqlash uchun ishlatiladi. JavaScript-da matnlar har doim qo'shtirnoq ichida yoziladi.
Qo'shtirnoqlardan foydalanish
JavaScript matni qo'shtirnoq ichiga yozilgan nol yoki undan ko'p belgilardan iborat bo'ladi.
Misol
let text = "John Doe";Siz bir tirnoq (') yoki qo'sh tirnoq (") dan foydalanishingiz mumkin:
Misol
let carName1 = "Volvo XC60"; // Qo'sh tirnoq
let carName2 = 'Volvo XC60'; // Bir tirnoqEslatma
Bir tirnoq va qo'sh tirnoq o'rtasida hech qanday farq yo'q. Ikkalasi ham bir xil ishlaydi.
Qo'shtirnoq ichida qo'shtirnoq ishlatish
Matn ichida qo'shtirnoqlardan foydalanishingiz mumkin, faqat ular matnni o'rab turgan qo'shtirnoqlar bilan bir xil bo'lmasligi kerak:
Misol
let answer1 = "Hammasi yaxshi";
let answer2 = "Uning ismi 'Johnny'";
let answer3 = 'Uning ismi "Johnny"';Shablonli Matnlar (Template Strings)
Shablonlar ES6 (2015) bilan birga kirib kelgan. Ular teskari tirnoq (backticks) ichiga yoziladi (`Bu shablonli matn`).
Shablonlar matn ichida ham bir tirnoq, ham qo'sh tirnoqlarni erkin ishlatishga imkon beradi:
Misol
let text = `U ko'pincha "Johnny" deb chaqiriladi`;Matn Uzunligi (String Length)
Matnning uzunligini (belgilar sonini) aniqlash uchun length xususiyatidan foydalaniladi:
Misol
let text = "ABCDEFGHIJKLMNOPQRSTUVWXYZ";
let length = text.length; // result: 26Maxsus Belgilar (Escape Characters)
Matnlar qo'shtirnoq ichida yozilishi kerakligi sababli, JavaScript quyidagi matnni noto'g'ri tushunadi:
let text = "Biz shimoldan kelgan "Vikinglar"miz.";Matn "Biz shimoldan kelgan " qismida uzilib qoladi.
Ushbu muammoni hal qilish uchun backslash (teskari qiyshiq chiziq) belgisidan foydalanamiz. Backslash (\) maxsus belgilarni matn belgisiga aylantiradi:
| Kod | Natija | Tavsif |
|---|---|---|
\' | ' | Bir tirnoq |
\" | " | Qo'sh tirnoq |
\\ | \ | Backslash |
Misol
let text = "Biz shimoldan kelgan \"Vikinglar\"miz.";
let text2 = 'Hammasi yaxshi (It\'s alright).';
let text3 = "Belgi \\ backslash deb ataladi.";JavaScript-da yana boshqa 6 ta maxsus o'tish ketma-ketliklari mavjud:
| Kod | Natija |
|---|---|
\b | Backspace (Orqaga o'chirish) |
\f | Form Feed |
\n | New Line (Yangi qator) |
\r | Carriage Return |
\t | Horizontal Tabulator (Tabulatsiya) |
\v | Vertical Tabulator |
Eslatma
Yuqoridagi 6 ta belgi dastlab yozuv mashinkalari va teletayplarni boshqarish uchun yaratilgan. HTML-da ular odatda hech qanday vizual natija bermaydi.
Uzun Qatorlarni Bo'lish
O'qishga qulay bo'lishi uchun dasturchilar ko'pincha juda uzun kod qatorlaridan qochishadi.
Bayonotni (statement) bo'lishning eng xavfsiz yo'li — operatorlardan keyin yangi qatorga o'tishdir:
Misol
document.getElementById("demo").innerHTML =
"Salom Dunyo!";Matnning o'zini esa qo'shish operatori (+) yordamida bo'lish mumkin:
Misol
document.getElementById("demo").innerHTML = "Salom " +
"Dunyo!";Shuningdek, shablonli matnlar (backticks) ko'p qatorli matnlarni to'g'ridan-to'g'ri yozishga imkon beradi:
Misol
let text =
`Tezkor
jigarrang tulki
dangasa itning
ustidan sakrab o'tdi`;JavaScript Matnlari Obyekt Sifatida
Odatda JavaScript matnlari primitiv qiymatlar hisoblanadi: let x = "John";
Lekin ularni new kalit so'zi yordamida obyekt sifatida ham e'lon qilish mumkin: let y = new String("John");
Diqqat
Matnlarni obyekt sifatida yaratmang. new kalit so'zi kodni murakkablashtiradi va ishlash tezligini pasaytiradi. Shuningdek, kutilmagan natijalarga olib kelishi mumkin:
let x = "John";
let y = new String("John");
(x == y) // true - chunki qiymatlari bir xil
(x === y) // false - chunki turlari har xil (string vs object)Obyektlarni bir-biri bilan solishtirish (== yoki ===) har doim false qaytaradi.
