منابع آموزشی و پژوهشی، برای دانشگاه و مدرسه
پشتیبانیانتشار محتوا
CODEX/سطح ۱؛ نوع‌ها و تبدیلjavascripttrim, case conversion and replace

پاک‌سازی و جایگزینی متن در جاوااسکریپت

متن ورودی را در جاوااسکریپت با trim، تبدیل حروف و replace آماده کنید؛ فرق جایگزینی نخستین مورد با replaceAll و حفظ متن اصلی را ببینید.

مفهوم به زبان ساده

عنوانی که از فرم دریافت می‌شود ممکن است فاصلهٔ اضافی یا شکل نوشتاری متفاوت داشته باشد. روش trim فاصله‌های ابتدا و انتهای رشته را حذف می‌کند؛ فاصله‌های میان واژه‌ها را دست نمی‌زند. روش‌های toLowerCase و toUpperCase شکل حروف دارای حالت کوچک و بزرگ را تبدیل می‌کنند. این عملیات روی مقدار رشتهٔ قبلی نوشتن انجام نمی‌دهند و نتیجهٔ تازه می‌سازند.

در مثال، یک برچسب انگلیسی را ابتدا پاک‌سازی و سپس به حروف کوچک تبدیل می‌کنیم. بعد، replace با الگوی رشته‌ای فقط نخستین js را جایگزین می‌کند، ولی replaceAll هر دو مورد را تغییر می‌دهد. نام‌گذاری مرحلهٔ پاک‌سازی کمک می‌کند ببینیم هر تصمیم در کدام نقطه اعمال شده است. متن اولیه همچنان برای مقایسه یا نشان‌دادن ورودی اصلی در دسترس می‌ماند.

پاک‌سازی باید به قرارداد داده احترام بگذارد. حذف همهٔ فاصله‌ها از نام یک شخص یا تغییر بی‌اعلام شناسه ممکن است اطلاعات معتبر را خراب کند. تبدیل حروف انگلیسی نیز حروف فارسی و عربی را خودکار یکسان نمی‌کند. برای تمرین، رشته‌ای فقط شامل فاصله و متنی بدون js را آزمایش کنید. همچنین جایگزینی متن، اعتبارسنجی یا ایمن‌سازی HTML نیست؛ خروجی آن را برای نمایش ورودی نامطمئن به textContent بدهید.

کجا به کار می‌آید؟

  • آماده‌کردن عنوان ورودی پیش از بررسی خالی‌بودن
  • یکسان‌کردن برچسب‌های انگلیسی یا جایگزینی متن مشخص

از تعریف تا یک مثال واقعی

javascript
const raw = '  JS JS  ';
const normalized = raw.trim().toLowerCase();
console.log(normalized);
console.log(normalized.replace('js', 'JavaScript'));
console.log(normalized.replaceAll('js', 'JavaScript'));
console.log(raw.startsWith('  '));
خروجی مورد انتظار
js js
JavaScript js
JavaScript JavaScript
true
کد را تغییر دهید و نتیجه را ببینید.

این مثال چطور کار می‌کند؟

  1. trim فاصله‌های دو سر متن را حذف و toLowerCase حروف را کوچک می‌کند.

  2. replace با الگوی رشته‌ای فقط نخستین مورد را عوض می‌کند.

  3. replaceAll هر دو تطبیق را جایگزین می‌کند.

  4. raw همچنان فاصلهٔ ابتدایی دارد؛ متن اولیه تغییر نکرده است.

اشتباه رایج

نتیجهٔ trim یا replace را دور نیندازید؛ این روش‌ها متغیر اولیه را ویرایش نمی‌کنند. replaceAll با الگوی RegExp به پرچم g نیاز دارد.

این را به خاطر بسپارید

تبدیل متن را مرحله‌ای و بر اساس قرارداد انجام دهید و مقدار برگشتی را نگه دارید.

بازگشت به نقشهٔ مفاهیم
یکجا انتخاب کن، راحت‌تر دریافت کن

انتخاب‌های من ۰ منبع

مجموعهٔ مطالعه‌ات را بساز.

کنار مقاله‌ها «انتخاب» را بزنید تا چند فایل را با هم دریافت کنید.

انتخاب مقاله‌های رایگان