رشته (string) دنباله ای از کارکترها است که می تواند ترکیبی از حروف، ارقام و کاراکترهای خاص باشد. رشته ها در جاوا اسکریپت برای نگه داری و دستکاری متن استفاده می شوند. یک رشته در جاوا اسکریپت می تواند هیچ یا چند کارکتر درون یک جفت کوتیشن (" ") باشد. ( امکان استفاده از دو نوع " " یا ' ' وجود دارد و تفاوتی بین کوتیشن دوتایی و تکی وجود ندارد):
var x = "John Doe";
شما می توانید هم از کوتیشن تکی و هم کوتیشن دوتایی استفاده کنید: مثال زیر نحوه تعریف دو متغیر از نوع string را نشان می دهد.
شما می توانید داخل رشته از کوتیشن استفاده کنید تا وقتی که به کوتیشن بیرونی وصل نشود، به عبارتی با علامت های نقل قول اطراف رشته تداخل پیدا نکند. برای این منظور می توانید داخل یک رشته ای که با کوتیشن دوتایی تعریف شده از کوتیشن تکی استفاده کنید و برعکس. مثال های زیر نحوه انجام این کار را نشان می دهد.
طول رشته
برای پیدا کردن طول یک رشته، می توانید از مشخصه ی length استفاده کنید. این مشخه طول رشته مورد نظر را بر می گرداند. دقت داشته باشید که space یا فاصله هم یک کاراکتر در نظر گرفته می شود.
کاراکتر Escape
از آنجا که رشته ها باید درون یک جفت کوتیشن نوشته شوند، جاوا اسکریپت رشته ی زیر را نمی فهمد:
var x = "We are the so-called "Vikings" from the north.";
در عبارت بالا تنها رشته "We are the so-called" در نظر گرفته خواهد شد.
برای اجتناب کردن از این مشکل، می توانید از کاراکتر بک اسلش ( \ ) استفاده کنید. بک اسلش کاراکترهای به خصوص را به رشته تبدیل می کند. از کاراکتر \ می توان برای درج سایر حروف ویژه در یک رشته استفاده کرد. علامت \” یک کوتیشن دوتایی به رشته اضافه می کند:
var x = "We are the so-called \"Vikings\" from the north.";
علامت \' یک کوتیشن تکی به رشته اضافه می کند:
var x = 'It\'s alright.';
علامت \\ یک بک اسلش به رشته اضافه می کند.
جدول زیر لیست حروف ویژه ای که می توان در یک رشته متنی با علامت \ درج کرد، آمده است.
کوتاه کردن خطوط بلند کد
برای خوانایی بهتر، برنامه نویسان تمایل دارند تا از نوشتن خط های کدی که بیشتر از 80 کاراکتر دارند اجتناب کنند.
اگر یک عبارت جاوا اسکریپت روی یک خط جای نگیرد، بهترین نقطه برای قطع کردن آن بعد از یک عملگر می باشد:
شما همچنین می توانید در درون رشته، یک خط را با یک بک اسلش قطع کنید:
یک راه امن تر و پرکاربرد تر برای قطع کردن یک رشته، استفاده از فرآیند جمع کردن رشته است:
شما نمی توانید یک خط را با یک بک اسلش قطع کنید:
رشته ها می توانند اشیا باشند
معمولا رشته های جاوا اسکریپت دارای مقادیر الفبایی و عددی می باشند که از حروف لفظی (literal ها ) تشکیل شده اند:
var firstName = "John";
اما رشته ها همچنین می توانند با کلید واژه ی new بعنوان اشیا تعریف شوند. تعریف بی جهت رشته به عنوان Object باعث کندی در اجرا برنامه می شود.
var firstName = new String("John");
مثال
توجه: تا حد ممکن از ایجاد رشته به عنوان اشیا خوداری کرده، زیرا که سرعت اجرا را کاهش داده و باعث بروز مشکلات بسیاری می شود.
در زبان جاوا اسکریپت شما می توانید از عملگر == برای ارزیابی مساوی بودن دو رشته استفاده کنید. (رشته هایی که مقادیر یکسان دارند یکسان محسوب می شوند). در مثال زیر دو متغیر x و y با یکدیگر برابر هستند.
اما وقتی از عملگر === استفاده می کنیم، هر دو رشته باید هم در نوع و هم در مقدار با یکدیگر برابر باشند. در مثال زیر x و y با یکدیگر برابر نیستند زیرا علی رغم یکسان بودن مقادیر آن ها نوع متغیر x و y با یکدیگر متفاوت است. در مثال زیر x از نوع string و y از نوع object است.
یا حتی از آن هم بدتر، اشیا نمی توانند باهم مقایسه شوند.