رشته ها در جاوا اسکریپت

رشته ها در جاوا اسکریپت برای مرتب کردن و دستکاری متن استفاده می شوند. یک رشته در جاوا اسکریپت یک مجموعه از حروف از قبیل "پرستار" را در خود ذخیره می کند.

رشته ها در جاوا اسکریپت

رشته ها در جاوا اسکریپت برای مرتب کردن و دستکاری متن استفاده می شوند. یک رشته در جاوا اسکریپت یک مجموعه از حروف از قبیل "پرستار" را در خود ذخیره می کند. رشته می تواند هر متنی باشد که در داخل علامت نقل قول یا گیومه جفت ("") یا تک (‘ ‘) قرار گرفته باشد. مثال:

javascript strings

می توان علامت " را در داخل رشته استفاده نمود، تا زمانی که این علامت با علامت گیومه نشانگر رشته یکسان نباشد. یعنی رشته حاوی ‘ را در داخل " " و رشته حاوی " را بین ‘ ‘ استفاده می کنیم. مثال:

javascript strings

طول رشته

طول رشته را می توان در خصیصه داخلی length یافت. مثال:

javascript strings

حروف ویژه

چون رشته ها بایستی در داخل گیومه قرار داده شوند، جاوا اسکریپت ممکن است برداشت اشتباهی از این رشته ها داشته باشد مثلا:

javascript strings

این رشته به صورت زیر خوانده می شود: “we are so called”

راه حل اجتناب از این مشکل استفاده از حرف فرار \ است. حرف فرار ممیز برعکس حرف خاص را به یک حرف رشته ای تبدیل می کند. مثال:

javascript strings

از حرف فرار می توان برای درج سایر حروف ویژه در یک رشته استفاده کرد. در جدول زیر لیست حروف ویژه ای که می توان در یک رشته متنی با علامت \ درج کرد، آمده است.

javascript strings

شکستن خطوط کد طولانی

برای خوانا بودن کد، برنامه نویسان اغلب از طولانی تر از 80 حرف شدن خطوط کد پرهیز می کنند. اگر دستور جاوا اسکریپت در یک خط جا نمی شد، می توان آن را به خط بعد منتقل کرد و بهترین مکان برای شکستن خط کد بعد از اپراتورها است. مثال:

javascript strings

همچنین می توان خط کد را از وسط یک رشته با استفاده از / شکست. مثال:

javascript strings

متد \ در ECMAScript (جاوا اسکریپت) یک متد استاندارد نیست و بعضی از موتورهای جستجوگر فاصله پشت حرف \ را مجاز نمی دانند. ایمن ترین راه (اما اندکی کند) برای شکستن خطوط طولانی کد استفاده از جمع رشته ها است. مثال:

javascript strings

از \ نمی توان برای شکستن خط کد استفاده کرد. مثال زیر خطا است:

javascript strings

رشته ها می توانند شی باشند

بطور معمول رشته های جاوا اسکریپت مقادیر اولیه و پایه هستند که از حروف دلخواه ساخته شده اند.: <code>var firstName = "John"</code>

اما رشته ها را می توان با کلمه کلیدی new به صورت شی تعریف کرد: <code>var firstName = new String("John")</code>

javascript strings

رشته ها را به صورت شی تعریف نکنید، زیرا موجب کند شدن اجرای کد می شود و عوارض جانبی ناخواسته ای به همراه دارد. از قبیل:

- زمان استفاده از اپراتور ==، رشته های مساوی برابر به نظر می رسند:

javascript strings

- زمان استفاده از اپراتور = = = برای تساوی، رشته های مساوی برابر نیستند، زیرا اپراتور = = = انتظار دارد که رشته ها هم از نظر نوع و هم مقدار برابر باشند.. مثال:

javascript strings

- یا حتی بدتر، اشیاء را نمی توان با هم مقایسه کرد:

javascript strings

خصیصه ها و متد های رشته ها

مقادیر ابتدایی از قبیل "پرستار" نمی توانند خصیصه یا متد داشته باشند (زیرا شی نیستند). اما در جاوا اسکریپت، متدها و خصیصه ها برای مقادیر ابتدایی در دسترس هستند، زیرا جاوا اسکریپت با مقادیر ابتدایی در زمان اجرای متدها و خصیصه ها به عنوان شی برخورد می کند.

خصیصه های رشته ها در جدول زیر آمده است:

شرح خصیصه
تابعی را بر می گرداند که الگوی شی رشته را خلق کرده است constructor
طول رشته را بر می گرداند length
به شما اجازه می دهد به یک شی خصیصه یا متدی اضافه کنید prototype

متدهای رشته ها در مبحث بعدی شرح داده می شوند. در اینجا فقط نام برده می شوند:

شرح متد
حرف موجود در ایندکس (موضع) تعیین شده را بر می گرداند charAt()
معادل یونیکد حرف قرار گرفته در ایندکس مشخص شده را بر می گرداند charCodeAt()
دو یا چند رشته را به هم وصل می کند و کپی رشته وصل شده را بر می گرداند concat()
مقدار یونیکد را به حرف تبدیل می کند fromCharCode()
موضع اولین وقوع یک مقدارخاص در یک رشته را بر می گرداند indexOf()
موضع آخرین وقوع یک حرف خاص تعیین شده را در یک رشته بر می گرداند lastIndex()
دو رشته را در حوزه محلی جاری مقایسه می کند localeCompare()
رشته ای را از نظر وجود حروف یکسان با عبارت معمول جستجو کرده و همسان ها را بر می گرداند match()
رشته را به دنبال مقداری گشته و رشته جدید را با مقدار جایگزین شده بر یم گرداند replace()
رشته ای را برای مقداری جستجو کرده و موضع معادل را بر می گرداند search()
بخشی از یک رشته را استخراج کرده و به عنوان رشته ای جدید بر می گرداند slice()
رشته ای را به آرایه ای از رشته های فرعی تقسیم می کند split()
بخشی از رشته را از موضع شروع تا تعداد مشخص شده ای از حروف استخراج می کند subStr()
بخشی از رشته را که بین دو موضع مشخص است، استخراج می کند substring()
رشته را به حروف کوچک تبدیل می کند، برحسب حروف محلی میزبان toLocaleLowerCase()
رشته را به حروف بزرگ تبدیل می کند، مطابق حروف محلی میزبان toLocaleUpperCase()
رشته را به حروف کوچک تبدیل می کند toLowerCase()
مقدار یک شی رشته ای راا بر می گررداند toString()
رشته را به حروف بزرگ تبدیل می کند toUppercase()
فاصله خالی را از هر دو سر رشته حذف می کند trim()
مقدار ابتدایی شی رشته ای را بر می گرداند valueOf()

عضویت در خبرنامه پلکسا

در صورت تمایل ایمیل خود را وارد کنید و تازه های پلکسا را از طریق ایمیل دریافت کنید. خبرنامه الکسا هفته نامه بوده و حاوی جدیدترین مطالب و نشریات پلکسا است.

قابل توجه وبمسترها

وبمستر گرامی

در صورتی که به دنبال جذب بازدید کننده یا ارتقای رنکینگ سایت خود هستید، پیشنهاد می کنیم پلکسا را یک پست یا مطلب مهمان کنید. همانطور که برای سایت خود مطلب می نویسید، مطلب خود را آماده و کد نویسی کرده و در پلکسا منتشر کنید. پلکسا هیچگونه دخل یا تصرفی در پست شما نخواهد داشت.

سئوالات، نظرات، پیشنهادات و مطالب خود را با ما و کاربران پلکسا در میان بگذارید - انجمن پلکسا