Middle
Nima uchun JavaScriptda primitiv satrga murojaat qilganda uni obyekt sifatida ko'rish mumkin?
sobes.tech AI
AIdan javob
JavaScript'ta, primitiv satr string (String emas) ga kirish paytida avtomatik tarzda konvertatsiya (boxing/emballaj) amalga oshiriladi. Bu vaqtinchalik ob'ekt bo'lib, satrlar uchun mavjud bo'lgan metodlar va xususiyatlarni o'z ichiga oladi (masalan, .length, .toUpperCase(), .indexOf()). Bu vaqtinchalik ob'ekt bilan operatsiya bajarilgandan so'ng, u yo'q qilinadi.
Misol uchun:
// primitiv satr
const myString = "hello";
// .length xususiyatiga kirish
// Avtomatik tarzda { "hello" } ob'ektiga o'raladi
// Keyin bu vaqtinchalik ob'ektning .length xususiyatiga murojaat qilinadi
console.log(myString.length); // 5
// .toUpperCase() metodiga kirish
// Avtomatik tarzda { "hello" } ob'ektiga o'raladi
// Keyin bu vaqtinchalik ob'ektning .toUpperCase() metodi chaqiriladi
console.log(myString.toUpperCase()); // "HELLO"
// Operatsiya tugagach, vaqtinchalik ob'ekt yo'q qilinadi.
// myString o'z holicha primitiv satr bo'lib qoladi.
console.log(typeof myString); // "string"
Bu xususiyat primitiv turlar bilan ishlashni osonlashtiradi, ularning funksionalligiga kirish uchun ob'ektga yo'naltirilgan sintaksisdan foydalanishga imkon beradi, aniq ob'ektlar yaratmasdan.
Primitiv satr va String ob'ekti o'rtasidagi taqqoslash:
| Xususiyat | Primitiv satr ("string") |
String ob'ekti (new String("string")) |
|---|---|---|
| Turi | string |
object |
=== bilan taqqoslash |
Qiymat bo'yicha | Havola bo'yicha |
| Umumiy | Ko'proq samarali | Kamroq samarali |
| Foydalanish | Tavsiya etiladi | Cheklash, faqat aniq zarur bo'lsa ishlatiladi |