مرجع رشته (String Reference)
اینجا خلاصه متدهای مهم «رشته (String)» را داریم. هر متد کاری روی متن انجام می دهد. معمولاً مقدار تازه برمی گردد؛ متن اصلی دست نخورده می ماند. مثال ها کوتاه هستند و سریع راه می افتی.
دسترسی به کاراکتر و طول
length طول را می دهد. at() کاراکترِ یک موقعیت را می دهد.
let name = "Amir";
let n = name.length;
let c = name.at(1);
جستجو و مقایسه
indexOf() و lastIndexOf() موقعیت را می دهند. includes() فقط بله/خیر می دهد.
let t = "Hello world";
let p1 = t.indexOf("o");
let p2 = t.lastIndexOf("o");
let has = t.includes("world");
برش، جدا کردن، تکرار
slice() تکه جدید می دهد. split() آرایه می دهد. repeat() تکرار می سازد.
let s = "JavaScript";
let part = s.slice(4, 10);
let arr = s.split("a");
let many = "ha".repeat(3);
جایگزینی و جستجوی الگو
replace() اولین تطبیق را عوض می کند. replaceAll() همه را عوض می کند. برای الگو «عبارت منظم (RegExp)» بده.
let msg = "apple, apple, APPLE";
let one = msg.replace("apple", "pear");
let all = msg.replaceAll(/apple/gi, "pear");
حروف کوچک/بزرگ و محلی
toLowerCase() و toUpperCase() ساده اند. نسخه های محلی toLocaleLowerCase() و toLocaleUpperCase() به زبان سیستم توجه می کنند.
let city = "İSTANBUL";
let lower = city.toLocaleLowerCase();
let upper = city.toLocaleUpperCase();
پیرایش فاصله ها و شروع/پایان
trim() دو طرف را تمیز می کند. trimStart() و trimEnd() فقط یک طرف را.
let raw = " hi ";
let t1 = raw.trim();
let t2 = raw.trimStart();
let t3 = raw.trimEnd();
شروع و پایان متن
startsWith() ابتدای رشته را چک می کند. endsWith() انتها را چک می کند.
let line = "Note.txt";
let sw = line.startsWith("No");
let ew = line.endsWith(".txt");
یونی کد، فرم درست و جایگزین
codePointAt() کُد یونی کد را می دهد. isWellFormed() و toWellFormed() با «سوروگیت تنها» برخورد می کنند.
let heart = "\uD83D\uDC99";
let ok = heart.isWellFormed();
let safe = heart.toWellFormed();
let cp = heart.codePointAt(0);
نکته ها
- متدهای رشته مقدار تازه می دهند؛ متن اصلی عوض نمی شود.
substr()منسوخ است؛ ازslice()یاsubstring()استفاده کن.- متدهای HTML مثل
bold()قدیمی و نامعمول هستند.
گام های تمرین
- نام کاربر را
trim()کن و خالی نبودن را چک کن. - اگر فایل با
.jsتمام شد، پیام بده. - با
replaceAll()همه فاصله ها را به «-» تبدیل کن.
نکته: برای مرور توضیحی به رشته ها (Strings) و برای جستجو به جستجوی رشته برو.
جمع بندی سریع
- تقریباً همه متدها غیرمخرب هستند.
- جستجو:
indexOf،includes، شروع/پایان. - تبدیل:
slice،split،repeat. - جایگزینی:
replaceوreplaceAll. - یونی کد امن:
isWellFormedوtoWellFormed.