string Type and String Conversion

string Type and String Conversion – String Data Type Zero या अधिक 16-bit Unicode Characters की एक Sequence को Represent करता है। Strings को हमेंशा Single या Double Quotes के बीच Enclose किया जाता है। जैसे-

[code]var firstName = "Kuldeep";
var lastName = 'Mishra';
[/code]

PHP की तरह ही JavaScript में भी Single Quotes के बीच Double Quotes को व Double Quotes के बीच Single Quotes को Specify किया जा सकता है। जैसे-

[code]var msg1 = "That's right.";
var msg2 = 'It is "Great" application.';
[/code]

हालांकि हम String को Represent करने के लिए Single Quote या Double Quotes का प्रयोग कर सकते हैं। लेकिन हम इन दोनों की निम्नानुसार Mixing नहीं कर सकते अन्‍यथा Error Generate होता है:

[code]var lastName = "Mishra'; // Error: Opening and Closing Quotes should match.
[/code]

Character Literals or Backslash Character Constants

String Data Types में हम विभिन्न प्रकार की जरूरतों को पूरा करने के लिए निम्न Character Constants को भी Use कर सकते हैं:

\n New line
\t Tab
\b Backspace
\r Carriage return
\f Form feed
\\ Backslash (\)
\’ Single quote ( ‘ ) — used when the string is delineated by single quotes. Example: ‘ He said, \’hey.\’’ .
\” Double quote ( “ ) – used when the string is delineated by double quotes. Example: “ He said, \”hey.\”” .
\xnn A character represented by hexadecimal code nn (where n is an octal digit 0 – F). Example: \x41 is equivalent to “A”.
\unnnn A Unicode character represented by the hexadecimal code nnnn (where n is a hexadecimal digit 0 – F). Example: \u03a3 is equivalent to the Greek character _ .

Literal Characters को String में कहीं भी Use किया जा सकता है और ये इस तरह से Interpret होते हैं, जैसे कि एक Single Character हों। जैसे-

[code]var text = “This is the letter sigma: \u03a3.”;
[/code]

इस उदाहरण में text नाम के Variable की Length केवल 28 Character है क्योंकि Sigma के लिए Specify किया गया Backslash Character पांच Digit का होने के बावजूद भी एक ही Character जितनी Space लेता है। इसकी Length को निम्नानुसार Alert Box में देखा जा सकता है:

[code]alert(text.length);   // Output: 28
[/code]

ECMAScript में Strings को एक बार Create कर देने के बाद उन्हें Change नहीं किया जा सकता। एक बार किसी String को किसी Variable में Specify कर देने के बाद Original String को Destroy किए बिना उस Variable में नई String को Specify नहीं किया जा सकता। जैसे-

[code]var name = "Kuldeep";
name = name + " Mishra";
[/code]

जब ये Statements Interpret होते हैं तो सबसे पहले name नाम के Variable में “Kuldeep” Value Initialize होती है। फिर अलग Statement में name में Stored “Kuldeep” के साथ Directly “Mishra” Add नहीं होता बल्कि पहले ये दोनों Strings एक साथ एक नए Variable में Store होती हैं। फिर name नाम के Variable को Destroy किया जाता है और उस नए Variable का नाम बदल कर फिर से name कर दिया जाता है।

ये सारी प्रक्रिया Web Browser स्वयं करता है, जिसके बारे में हमें पता भी नहीं चलता। लेकिन इस प्रक्रिया को हमेंशा ध्‍यान में रखना चाहिए। क्योंकि यदि हमारे Program में बार-बार इस प्रक्रिया को Use किया जाता है, तो Program की Speed काफी कम हो जाती है।

String Conversion

किसी Value को String में Convert करने के दो तरीके JavaScript में Use किए जा सकते हैं। पहले तरीके में toString() Method को Use किया जाता है, जो कि Variable की Value को Exactly Same String Representation में Convert करते Return करता है। जैसे-

[code]  var salary=2000;
  var salaryAsStr = salary.toString()      // Output: “2000”
  var bulbIsOn = false;
  var bulbIsOnStr = bulbIsOn.toString();   // Output: “false”
[/code]

toString() Method Number, Boolean, Objects व Strings के लिए Available होता है। यानी हम इस प्रकार के मानों को Hold करने वाले Variables के साथ toString() Method को Use कर सकते हैं। जबकि null या undefined के साथ इस Method को Use नहीं किया जा सकता।

सामान्‍यत: ये Method किसी प्रकार का Argument नहीं लेता लेकिन किसी Number Value के लिए ये Method Radix के रूप में एक Single Argument Accept करता है जहां Radix इस बात को Specify करता है कि Return होने वाला String Format किस Number System पर आधारित होगा।

यदि हम Radix के रूप में 2 Specify करते हैं, तो Return होने वाला String Binary System पर आधारित Number Return करता है, जबकि 8 या 16 Specify करने पर Return होने वाला String Octal या Hexadecimal Number System पर आधारित String Return करता है। जिसे हम निम्न Code द्वारा समझ सकते हैं:

[code]var num = 10;
alert(num.toString());     // Returned String: ”10”        Decimal Format
alert(num.toString(2));    // Returned String: ”1010”      Binary Format
alert(num.toString(8));    // Returned String: ”12”        Octal Format
alert(num.toString(10));   // Returned String: ”10”        Decimal Format
alert(num.toString(16));   // Returned String: ”a”         Hexadecimal Format
[/code]

उपरोक्त उदाहरणों द्वारा हम समझ सकते हैं कि जब हम इस Method में Radix का मान Specify करते हैं, तब Return होने वाली Numerical String उस Specified Radix के Number System के Format अनुसार Convert होकर Return होता है। Number का Default Representation Decimal Representation ही होता है।

यदि हम इस बात के लिए Sure न हों कि Specified Variable में Stored Value null या undefined नहीं है, तो String Casting Function का प्रयोग करके हम उस Variable के मान को String में Convert कर सकते हैं। ये Function हमेंशा Variable की Value का String Representation Return करता है। इस Function पर निम्न Rules Apply होते हैं:

  • यदि Value के साथ बिना Radix Use किए हुए toString() Method Use किया गया हो, तो ये Function Value का String Representation Return करता है।
  • यदि Value null हो तो ये Function “null” String Return करता है।
  • यदि Value undefined हो, तो ये Function “undefined” String Return करता है।

जैसे-

[code]var value1 = 10;
var value2 = true;
var value3 = null;
var value4;
alert(String(value1));         // Returned String: ”10”
alert(String(value2));         // Returned String: ”true”
alert(String(value3));         // Returned String: ”null”
alert(String(value4));         // Returned String: ”undefined”
[/code]

जैसाकि उपरोक्त Codes के Output में हम देख सकते हैं कि चूंकि String Method nullundefined Values का String Representation Return नहीं कर सकता, इसलिए ये Function उन Values को String Literals के रूप में Return कर देता है।

Advavnce JavaScript in Hindiये Article इस वेबसाईट पर Selling हेतु उपलब्‍ध EBook Advance JavaScript in Hindi से लिया गया है। इसलिए यदि ये Article आपके लिए उपयोगी रहा, तो निश्चित रूप से ये पुस्तक भी आपके लिए काफी उपयोगी साबित होगी। 

Advance JavaScript in Hindi | Page: 669 | Format: PDF

BUY NOW GET DEMO REVIEWS