Skip to content

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

js
let text = "John Doe";

Siz bir tirnoq (') yoki qo'sh tirnoq (") dan foydalanishingiz mumkin:

Misol

js
let carName1 = "Volvo XC60";  // Qo'sh tirnoq
let carName2 = 'Volvo XC60';  // Bir tirnoq

Eslatma

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

js
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

js
let text = `U ko'pincha "Johnny" deb chaqiriladi`;

Matn Uzunligi (String Length) ​

Matnning uzunligini (belgilar sonini) aniqlash uchun length xususiyatidan foydalaniladi:

Misol

js
let text = "ABCDEFGHIJKLMNOPQRSTUVWXYZ";
let length = text.length; // result: 26

Maxsus Belgilar (Escape Characters) ​

Matnlar qo'shtirnoq ichida yozilishi kerakligi sababli, JavaScript quyidagi matnni noto'g'ri tushunadi:

js
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:

KodNatijaTavsif
\''Bir tirnoq
\""Qo'sh tirnoq
\\\Backslash

Misol

js
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:

KodNatija
\bBackspace (Orqaga o'chirish)
\fForm Feed
\nNew Line (Yangi qator)
\rCarriage Return
\tHorizontal Tabulator (Tabulatsiya)
\vVertical 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

js
document.getElementById("demo").innerHTML =
"Salom Dunyo!";

Matnning o'zini esa qo'shish operatori (+) yordamida bo'lish mumkin:

Misol

js
document.getElementById("demo").innerHTML = "Salom " +
"Dunyo!";

Shuningdek, shablonli matnlar (backticks) ko'p qatorli matnlarni to'g'ridan-to'g'ri yozishga imkon beradi:

Misol

js
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:

js
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.