जावास्क्रिप्ट स्ट्रिंग से अंतिम कैरेक्टर कैसे हटाएं? 5 सर्वोत्तम तरीके

शुरुआती लोगों के लिए ऑनलाइन Python प्रशिक्षक

Python आसानी से सीखें बिना सिद्धांत के बोझ के। स्वचालित जांच के साथ व्यावहारिक कार्य हल करें और ब्राउज़र में सीधे कोड लिखें।

पाठ्यक्रम शुरू करें

जावास्क्रिप्ट स्ट्रिंग से अंतिम कैरेक्टर कैसे हटाएं? शुरुआती और पेशेवरों के लिए चरण-दर-चरण मार्गदर्शिका

\n\n

क्या आपने कभी ऐसी स्थिति का सामना किया है जहाँ आपको स्ट्रिंग के अंत में एक अतिरिक्त अल्पविराम हटाना हो, एक बिंदु हटाना हो या बस अंतिम कैरेक्टर को 'काटना' हो? यह प्रश्न Stack Overflow पर सैकड़ों हज़ारों व्यूज़ के साथ एक वास्तविक हिट है। और यह सही भी है: स्ट्रिंग के साथ काम करना वह आधार है जिस पर 90% फ्रंटएंड डेवलपमेंट टिका हुआ है।

\n\n

इस लेख में, हम केवल सूखे उत्तर नहीं देंगे। हम 5 कार्यशील तरीकों का विश्लेषण करेंगे, छिपी हुई समस्याओं को दिखाएंगे और प्रत्येक कार्य के लिए सही उपकरण चुनना सिखाएंगे। चलिए शुरू करते हैं!

\n\n

यह क्यों महत्वपूर्ण है? वास्तविक जीवन के तीन परिदृश्य

\n\n

कोड में गोता लगाने से पहले, आइए उन स्थितियों की कल्पना करें जहाँ आपको निश्चित रूप से जावास्क्रिप्ट स्ट्रिंग के अंतिम कैरेक्टर को हटाने की आवश्यकता होगी:

\n\n
    \n
  • सूचियों को फ़ॉर्मेट करना: आप join(', ') के माध्यम से एक ऐरे को स्ट्रिंग में बदल रहे हैं, लेकिन अंत में एक अतिरिक्त अल्पविराम रह जाता है।
  • \n
  • URL प्रोसेसिंग: सर्वर पर भेजने से पहले पते के अंत से स्लैश हटाना होता है।
  • \n
  • ID के साथ काम करना: "item-123-" जैसी स्ट्रिंग से अंतिम डैश हटाना आवश्यक है।
  • \n
\n\n

परिचित लगता है? तो चलिए जावास्क्रिप्ट में अंतिम कैरेक्टर हटाने के तरीकों का विश्लेषण शुरू करते हैं।

\n\n

विधि #1: slice() — सादगी और गति का राजा

\n\n

यह सबसे लोकप्रिय और सहज ज्ञान युक्त तरीका है। slice() विधि एक नया ऐरे (या स्ट्रिंग) लौटाती है, जो निर्दिष्ट स्थान से तत्वों की प्रतिलिपि बनाती है।

\n\n
let str = "नमस्ते, दुनिया!";\nlet result = str.slice(0, -1);\nconsole.log(result); // "नमस्ते, दुनिया"
\n\n

यह कैसे काम करता है? slice(0, -1) का अर्थ है: "इंडेक्स 0 से शुरू करके सभी कैरेक्टर लें, और अंत से 1 कैरेक्टर पहले रुकें।" जावास्क्रिप्ट में नकारात्मक इंडेक्स स्ट्रिंग के अंत से गिनती है। शानदार और संक्षिप्त!

\n\n

slice() के फायदे और नुकसान:

\n
    \n
  • फायदा: स्ट्रिंग और ऐरे दोनों के साथ काम करता है। मूल स्ट्रिंग को नहीं बदलता।
  • \n
  • फायदा: 95% मामलों में सबसे तेज़ तरीका (JSperf परीक्षणों के अनुसार)।
  • \n
  • नुकसान: यदि अंतिम कैरेक्टर नहीं बल्कि, मान लीजिए, अंतिम 3 कैरेक्टर हटाने हों तो उपयुक्त नहीं है।
  • \n
\n\n
\n पेशेवर सलाह: slice() को मुख्य उपकरण के रूप में उपयोग करें। यह उद्योग का मानक है।\n
\n\n

विधि #2: substring() — पुराना लेकिन विश्वसनीय दोस्त

\n\n

substring() विधि जावास्क्रिप्ट की समकालीन है। यह समान रूप से काम करती है, लेकिन एक महत्वपूर्ण अंतर के साथ: यह नकारात्मक इंडेक्स को नहीं समझती और उन्हें सीधे 0 में बदल देती है।

\n\n
let str = "जावास्क्रिप्ट";\n// अंतिम कैरेक्टर हटाने के लिए, लंबाई जानना आवश्यक है\nlet result = str.substring(0, str.length - 1);\nconsole.log(result); // "जावास्क्रिप"
\n\n

देखा? स्ट्रिंग की लंबाई की गणना करनी पड़ती है। यह असुविधाजनक है, लेकिन ऐतिहासिक रूप से substring() अक्सर पुराने कोड (legacy) में पाया जाता है।

\n\n

substring का उपयोग कब करें?

\n
    \n
  • यदि आपको बहुत पुराने ब्राउज़रों के लिए समर्थन चाहिए (IE 8 और उससे नीचे — लेकिन यह दुर्लभ है)।
  • \n
  • यदि आप शैक्षिक कोड लिख रहे हैं और इंडेक्स के साथ काम करने के तर्क को स्पष्ट रूप से दिखाना चाहते हैं।
  • \n
\n\n

महत्वपूर्ण: substring() तर्कों को आपस में बदल देता है यदि पहला दूसरे से बड़ा हो। slice() इस मामले में एक खाली स्ट्रिंग लौटाता है। सावधान रहें!

\n\n

विधि #3: substr() — पुराना लेकिन टिकाऊ

\n\n

हाँ, substr() को ECMAScript विनिर्देश में आधिकारिक रूप से अप्रचलित (deprecated) घोषित किया गया है। लेकिन आप अभी भी इसे GitHub पर लाखों लाइनों के कोड में पाएंगे।

\n\n
let str = "हटाएं!";\nlet result = str.substr(0, str.length - 1);\nconsole.log(result); // "हटाएं"
\n\n

substring() से अंतर यह है कि दूसरा तर्क निकाले जाने वाले भाग की लंबाई है, न कि अंतिम इंडेक्स। भ्रमित करने वाला? थोड़ा सा है।

\n\n

क्या 2024 में substr() का उपयोग करना चाहिए?

ब्लॉग

पुस्तक अनुशंसाएँ