رشتهها
نوع string را در نقشهٔ انواع دیدید. اینجا همان متن را دست میگیریم: چطور داخل نقلقول بنویسید، چند نویسه دارد، چطور تکهها را به هم بچسبانید، نقلقول را داخل رشته بگذارید، و پیام را روی صفحه نشان دهید. ابزارهایی مثل slice و toUpperCase جلسهٔ بعد است.
رشتهها در JavaScript چطور کار میکنند؟
رشته همان متنی است که موتور آن را یک مقدار میبیند. با تکنقلقول، دونقلقول یا بکتیک (`) مینویسید. "سلام" و 'سلام' هر دو رشتهاند؛ 42 بدون نقلقول عدد است. خاصیت length تعداد نویسهها را میگوید (فاصله هم میشمارد). با + تکهها را میچسبانید، یا با template literal و جاینگهدار ${…} یک خط میسازید. بکاسلش (\) اجازه میدهد همان نوع نقلقول را داخل رشته بیاورید. اگر کاربر باید متن را ببیند، با textContent روی صفحه بگذارید.
جعبهٔ ابزار رشته
📊 ابزارهای متنی که اول به کارتان میآید
| مفهوم | نمونه | نتیجه / نکته |
|---|---|---|
| دونقلقول | let s = "Hi"; |
نوع string |
| تکنقلقول | let s = 'Hi'; |
همان نوع string |
length |
"Hi".length |
2 (نویسه) |
چسباندن با + |
"Hi" + "!" |
"Hi!" |
| escape | "Say \"hi\"" |
نقلقول داخل همان سبک |
| template | ` Hi, ${name} ` |
مقدار name را جا میدهد |
متن را داخل نقلقول بنویسید
یک سبک نقلقول را انتخاب کنید و با همان ببندید. "" خالی هم رشتهٔ معتبر (تهی) است.
let greeting = "Hello";
let city = 'Tehran';
console.log(greeting);
console.log(city);
console.log(typeof greeting);
تعداد نویسه با length
length خاصیت است، نه تابع — بنویسید .length، نه .length(). فاصله هم نویسه حساب میشود.
let word = "JavaScript";
console.log(word.length);
console.log("Hi there".length);
چسباندن متن با +
عملگر + تکههای متن را به هم میچسباند. اگر یک طرف رشته باشد، طرف دیگر اغلب به متن تبدیل میشود — برای همین "Score: " + 10 میشود "Score: 10". وقتی عدد و متن قاطی میکنید این را یادتان باشد.
let first = "Ada";
let last = "Lovelace";
let full = first + " " + last;
console.log(full);
console.log("Score: " + 10);
نقلقول را داخل رشته بگذارید
دو راه ساده: سبک نقلقول را عوض کنید، یا با بکاسلش escape کنید.
let a = "She said \"hello\"";
let b = 'It\'s ready';
console.log(a);
console.log(b);
template literal (بکتیک)
با بکتیک میتوانید رشته بنویسید و مقدار را با ${…} وسطش بگذارید — مناسب پیامهایی که کلمه و متغیر قاطی دارند.
let name = "Sam";
let line = `Hello, ${name}!`;
console.log(line);
رشته را روی صفحه نشان دهید
پیام را بسازید، بعد با textContent به پاراگراف بدهید تا متن ساده دیده شود.
<!DOCTYPE html>
<html>
<head>
<title>Strings — greeting on page</title>
</head>
<body>
<p id="out">…</p>
<script>
let user = "guest";
let msg = `Welcome, ${user}!`;
document.getElementById("out").textContent = msg;
</script>
</body>
</html>
پاراگراف همان خوشآمد را نشان میدهد. فقط user را عوض کنید، رفرش کنید، و خط تازه را ببینید.
خودتان امتحان کنید
- یک
letبا دونقلقول و یکی با تکنقلقول بسازید؛ هر دو را باtypeofلاگ بگیرید. .lengthرا برای"JavaScript"و برای یک عبارت کوتاه با فاصله لاگ بگیرید.- نام و نامخانوادگی را با
+و یک فاصله بچسبانید؛ نتیجه را لاگ بگیرید. - رشتهای بنویسید که داخلش آپاستروف یا دونقلقول باشد (escape یا عوض کردن سبک نقلقول).
- با یک
let nameعبارت`Hello, ${name}!`را بسازید و لاگ بگیرید. - در دموی HTML فقط
userرا عوض کنید، رفرش کنید، خوشآمد تازه را بخوانید.
اشتباههای رایج
- نوشتن
let s = Hello;بدون نقلقول — موتور دنبال متغیری به نامHelloمیگردد - باز کردن با
"و بستن با'(یا برعکس) - صدا زدن
length()مثل تابع — باید.lengthباشد - انتظار حساب عددی از
"5" + 5— وقتی یک طرف رشته است،+اغلب الحاق میکند - پریدن وسط دهها متد رشته قبل از محکم شدن همین پایهها (جلسهٔ بعد میآیند)
خلاصه
- رشته متن داخل
'…'یا"…"یا`…`است lengthنویسهها را میشمارد؛ خاصیت است نه تابع- با
+بچسبانید، یا از template literal و${…}استفاده کنید - نقلقول همسبک را با
\escape کنید، یا سبک نقلقول را عوض کنید - بعدی: متدهای رشته — ابزارهایی مثل
slice،replaceو تغییر حروف بزرگ/کوچک
🧠 دانش خود را بیازمایید
دانش خود را بیازمایید
خود را با این آزمون تعاملی به چالش بکشید و ببینید موضوع را چقدر خوب درک کردهاید
📝 دستورالعملها
- هر سوال را با دقت بخوانید
- بهترین پاسخ را برای هر سوال انتخاب کنید
- میتوانید آزمون را هر چند بار که میخواهید تکرار کنید
- پیشرفت شما در بالا نمایش داده میشود