‎‎رشته هادر جاوااسكريپتJavaScript Strings -‎

Previous >    <Next  

‎رشته ها در جاوااسكريپت براي ذخيره ودستكاري متن ميباشند .يك رشته در جاوااسكريپت داراي صفر ‎تاچند كراكتر ميباشد، كه درنقل قول قرارميگيرد.

‎‎مثال ـ نمونه رشته

et text = "John Doe";

--(go to editor for change code and run)

‎‎براي رشته ميتوان از كوتيشن يا دبل كوتيشن در اطراف آن استفاده كرد.

‎‎مثال ـ رشته باكوتيشن و يا دبل كوتيشن در اطراف آن

 let carName1 = "Volvo XC60";  // Double quotes
let carName2 = 'Volvo XC60';  // Single quotes 

--(go to editor for change code and run)

‎‎ميتوان از نقل قول ها درداخل متن رشته استفاده نمود بشرطيكه با نقل قول اطراف آن يكسان نباشد.

‎‎مثال ـ نقل قول در متن رشته

llet answer1 = "It's alright";
let answer2 = "He is called 'Johnny'";
let answer3 = 'He is called "Johnny"';

--(go to editor for change code and run)

‎‎طول رشتهString Length -‎

‎‎براي بدست آوردن طول رشته از ويژگي داخلي‎length‎ استفاده مي كنيم .

‎‎توجه ـ ويژگي داخلي‎length‎ ‎(built-‎in property) مربوط به رشته است .

‎‎مثال ـ بدست آوردن طول رشته

let text = "ABCDEFGHIJKLMNOPQRSTUVWXYZ";
let length = text.length;

--(go to editor for change code and run)

‎‎كراكتر فرارEscape Character -‎

‎بدليل اينكه رشته ها بايد در نقل قول نوشته شوند، جاوااسكريپت اين عبارات را اشتباه تفسير ‎ميكند .ونتيجه آنچه ميخواهيد، نميشود.

let text = "We are the so-called "Vikings" from the north.";

‎‎براي رفع اين مشكل ميتوان ازكراكترbackslash escape استفاده كرد .

‎كراكتر‎\‎ در رشته كراكتر خاصي است .در جدول زير عملكرد آن ‎در رشته ها مشخص شده است.

‎‎كد ‎‎نتيجه ‎‎شــرح
‎‎\'‎‎ ‎'‎ ‎‎كوتيشن
‎‎\‎"‎‎ ‎‎"‎ ‎‎دبل كوتيشن
‎\\‎ ‎\‎ ‎‎بك اسلش

‎‎مثال ـ دنباله‎\‎"‎ كراكتر‎‎"‎ را درج ميكند.

et text = "We are the so-called \"Vikings\" from the north."; 

--(go to editor for change code and run)

‎‎مثال ـ دنباله‎\'‎ كراكتر‎'‎ را درج ميكند.

let text= 'It\'s alright.';

--(go to editor for change code and run)

‎‎مثال ـ دنباله‎\\‎ كراكتر‎\‎ را درج ميكند.

let text = "The character \\ is called backslash.";

--(go to editor for change code and run)

‎‎شش دنباله فرار ديگر در جاوااسكريپت معتبر هستند، مطابق جدول زير

‎code‎ ‎Result‎
‎\b ‎Backspace‎
‎\f ‎Form Feed‎
‎\n ‎New Line‎
‎\r ‎Carriage Return‎
‎\t ‎Horizetal Tabulator‎
‎\v ‎Vertical Tabulator‎

‎كراكتر فراربالا در اصل براي دستگاهاي ماشين تحرير، تله تايپ و دستگاهاي فاكس طراحي شده ‎اند .آنها برايHTML هيچ معنائي ندارند .

‎‎شكستن خطوط طولاني كدBreaking Long Code Lines -‎

‎براي قابليت خواندن برنامه ها غالبا از نوشتن خطوط طولاني اجتناب ميكنند .معمولا حداكثر طول ‎خطوط 80 كراكتر منظور ميشود.

‎‎در صورتيكه دستور كد در يك خط مناسب قرار نگيرد، بهترين نقاط شكستن خط مكان عملگرهاست.

‎‎مثال ـ نمونه شكستن خط كد

document.getElementById("demo").innerHTML =
"Hello Dolly!"; 

--(go to editor for change code and run)

‎براي شكستن خط متن ميتوان از كراكتر بك اسلش استفاده كرد .بك اسلش را هرجاي متن كه با شكسته ‎شود قرار دهيد، وخط را بشكنيد.

‎‎مثال ـ نمونه شكستن خط متني

document.getElementById("demo").innerHTML = "Hello \
Dolly!";

--(go to editor for change code and run)

‎روش فوق ترجيحي نيست وممكن است پشتيباني جهاني نشود .برخي از مرورگرها فضاي خالي بعدا از ‎\‎‎مجاز نمي دانند.

‎‎يك روشن مطمئن براي شكستن متن ، عمل جمع درقسمتهاي آنست.

‎‎مثال ـ شكستن متن با عمل جمع

document.getElementById("demo").innerHTML = "Hello " +
"Dolly!";

--(go to editor for change code and run)

‎‎توجه ـ نميتوان يك خط كد را با‎\‎ شكست.

‎‎مثال ـ شكستن نادرست خط كد

document.getElementById("demo").innerHTML = \
"Hello Dolly!";

--(go to editor for change code and run)

‎‎رشته ها بعنوان شئJavaScript Strings as Objects -‎

‎‎بطور معمول رشته ها در جاوااسكريپت با مقادير ليترال تعريف يا ايجاد ميشوند .نمونه زير

let x = "John";

‎‎اما رشته ها ميتوانند بعنوان شئ با كي ورد‎new ‎ تعريف شوند . نمونه زير:

let y = new String("John");

‎‎مثال ـx رشته معمولي وy شئ رشته اي

let x = "John";
let y = new String("John");

--(go to editor for change code and run)

‎اشياء رشته اي ايجاد نكنيد .آنها كد را پيچيده و سرعت اجرا را كاهش ميدهند .اشياء رشته ‎ميتوانند نتايج غير منتظره اي ايجاد كنند.

‎‎هنگاميكه آندو مقايسه‎(x==y)‎ ميشوند نتيجه درست است.

let x = "John";
let y = new String("John");

--(go to editor for change code and run)

‎‎اما هنگاميكه آندو بصورت‎(x===y)‎ مقايسه شونند، نتيجه نادرست است .

let x = "John";
let y = new String("John");

--(go to editor for change code and run)

‎توجه كنيد كه نتيجه‎(x==y)‎ و‎(x===y)‎ ‎مغايرند.

‎‎آيا مقايسه‎(x==y)‎ مطابق نمونه زير درست است يا نادرست .

let x = new String("John");
let y = new String("John");

--(go to editor for change code and run)

‎‎آيا مقايسه‎(x===y)‎ مطابق نمونه زير درست است يا نادرست.

let x = new String("John");
let y = new String("John");

--(go to editor for change code and run)

‎‎توجه ـ مقايسه دو شئ در جاوااسكريپت هميشه نتيجه نادرست برگشت ميشود.


Previous >    <Next