8- آموزش جاوااسکریپت | کار با رشتهها (Strings) و متدهای کاربردی
در این آموزش به بررسی کامل رشتهها (Strings) در جاوااسکریپت میپردازیم. یاد میگیریم چگونه رشتهها را به یکدیگر متصل کنیم (Concatenation)، از کاراکترهای خاص فرار کنیم (Escaping) و از متدهای کاربردی برای تغییر و مدیریت متن استفاده کنیم.
رشتهها (Strings) در جاوااسکریپت یکی از پرکاربردترین انواع داده هستند. در اینجا با روشهای اتصال رشتهها، کاراکترهای کنترلی و متدهای مهم برای مدیریت آنها آشنا میشویم.
اتصال رشتهها (Concatenation)
سادهترین راه برای چسباندن رشتهها به یکدیگر، استفاده از عملگر + است.
const firstName = 'William';
const lastName = 'Johnson';
// اتصال ساده
let val = firstName + ' ' + lastName; // "William Johnson"
// استفاده از عملگر += برای افزودن به متغیر (Appending)
let name = 'Matin';
name += ' Molkara'; // "Matin Molkara"
کاراکترهای کنترلی (Escaping)
گاهی اوقات میخواهیم از کاراکترهایی مثل کوتیشن ' درون رشتهای که با کوتیشن تعریف شده استفاده کنیم. برای جلوگیری از خطای سینتکسی، از \ استفاده میکنیم:
let str = 'That\'s awesome'; // استفاده از بکاسلش برای خنثی کردن کوتیشن
ویژگیها و متدهای کاربردی
رشتهها در جاوااسکریپت دارای متدهای قدرتمندی هستند:
۱. طول رشته (Property)
از خاصیت .length برای شمارش تعداد کاراکترها استفاده میکنیم. (این خاصیت متد نیست و نیاز به پرانتز ندارد).
const name = 'William';
console.log(name.length); // 7
۲. تغییر ظاهر رشته
name.toUpperCase(); // "WILLIAM"
name.toLowerCase(); // "william"
۳. دسترسی به کاراکترها
میتوانیم رشته را مانند یک آرایه (Read-only) در نظر بگیریم:
name[0]; // "W" (دسترسی ایندکسی)
name.charAt(2); // "l" (دسترسی با متد)
۴. جستجو در رشته
name.indexOf('l'); // 2 (اولین محل یافت شده)
name.lastIndexOf('l'); // 3 (آخرین محل یافت شده)
۵. برش رشته (Substring & Slice)
// گرفتن بخشی از رشته از ایندکس ۰ تا قبل از چهار
name.substring(0, 4); // "Will"
name.slice(0, 4); // "Will"
چون در هر دو متد، عدد دوم end است و خودش در خروجی حساب نمیشود.
یعنی:
- شروع از ایندکس
0 - توقف قبل از ایندکس
4
اگر رشته "William" باشد:
W i l l i a m
0 1 2 3 4 5 6
خروجی فقط کاراکترهای ایندکس 0 تا 3 است:
"Will"
۶. تبدیل به آرایه (Split)
این متد رشته را بر اساس یک جداکننده (Separator) به آرایه تبدیل میکند که برای پردازش فرمها بسیار کاربردی است.
const tags = 'web design, programming, javascript';
tags.split(','); // ["web design", " programming", " javascript"]
۷. جایگزینی و جستجو
const greeting = 'Hello, my name is Matin';
greeting.replace('Matin', 'Jack'); // "Hello, my name is Jack"
greeting.includes('Hello'); // true (بررسی وجود یک کلمه)
جمعبندی
در این بخش آموختیم:
- چگونه رشتهها را به هم متصل کنیم.
- نحوه استفاده از
\برای نوشتن کاراکترهای خاص. - مدیریت رشتهها با متدهایی نظیر
slice،split،replaceوincludes.
در آموزش بعدی، به سراغ Template Literals در ES6 میرویم که راهکار مدرنتر و بسیار راحتتری برای اتصال رشتهها و ترکیب آنها با متغیرها ارائه میدهد.