टाइपस्क्रिप्टच्या रेगएक्स-व्हॅलिडेटेड स्ट्रिंग्सची शक्ती जाणून घ्या, जी आंतरराष्ट्रीय सॉफ्टवेअर डेव्हलपमेंटमध्ये प्रकार सुरक्षा आणि कोड गुणवत्ता वाढवते, जागतिक सर्वोत्तम पद्धती आणि उदाहरणांसह.
टाइपस्क्रिप्ट रेगएक्स व्हॅलिडेटेड स्ट्रिंग्स: जागतिक ॲप्लिकेशन्ससाठी पॅटर्न प्रकार सुरक्षा
सॉफ्टवेअर डेव्हलपमेंटच्या जगात, डेटाची अचूकता आणि अखंडता सुनिश्चित करणे अत्यंत महत्त्वाचे आहे, विशेषतः जागतिक प्रेक्षकांसाठी ॲप्लिकेशन्स तयार करताना. डेटा व्हॅलिडेशनचा एक महत्त्वाचा पैलू स्ट्रिंग्ससोबत काम करण्याशी संबंधित आहे, आणि या संदर्भात, रेग्युलर एक्सप्रेशन्स (regex) अत्यंत मौल्यवान ठरतात. टाइपस्क्रिप्ट, त्याच्या मजबूत टायपिंग सिस्टीममुळे, रेगएक्स पॅटर्नवर आधारित स्ट्रिंग्स प्रमाणित करण्याचा एक शक्तिशाली मार्ग प्रदान करते, ज्यामुळे प्रकार सुरक्षा आणि कोड गुणवत्ता लक्षणीयरीत्या वाढते. हा ब्लॉग पोस्ट रेगएक्स-व्हॅलिडेटेड स्ट्रिंग्स प्राप्त करण्यासाठी टाइपस्क्रिप्टच्या वैशिष्ट्यांचा कसा फायदा घ्यावा याचा शोध घेतो, आणि जगभरातील डेव्हलपर्ससाठी योग्य एक व्यापक मार्गदर्शक प्रदान करतो.
रेगएक्स आणि टाइपस्क्रिप्ट एक उत्तम जोड का आहेत
रेग्युलर एक्सप्रेशन्स हे स्ट्रिंग्समध्ये पॅटर्न मॅचिंगसाठी एक लवचिक आणि शक्तिशाली साधन आहे. ते डेव्हलपर्सना जटिल व्हॅलिडेशन नियम परिभाषित करण्याची परवानगी देतात, ज्यामुळे डेटा विशिष्ट स्वरूपांशी सुसंगत असल्याची खात्री होते. टाइपस्क्रिप्ट, जावास्क्रिप्टचा सुपरसेट असल्याने, स्टॅटिक टायपिंग प्रदान करते, ज्यामुळे चुका लवकर ओळखता येतात आणि कोडची देखभाल सुधारते. रेगएक्सची अभिव्यक्त शक्ती टाइपस्क्रिप्टच्या प्रकार प्रणालीसोबत जोडल्याने स्ट्रिंग्स प्रमाणित करण्यासाठी एक मजबूत उपाय तयार होतो, जो विश्वसनीय ॲप्लिकेशन्स तयार करण्यासाठी आवश्यक आहे. हे विशेषतः जागतिक सॉफ्टवेअरमध्ये महत्त्वाचे आहे, जिथे इनपुट डेटा प्रदेश आणि सांस्कृतिक संकेतांनुसार लक्षणीयरीत्या बदलू शकतो.
टाइपस्क्रिप्टमध्ये रेगएक्स-व्हॅलिडेटेड स्ट्रिंग्सचे फायदे
- वर्धित प्रकार सुरक्षा: टाइपस्क्रिप्टची प्रकार प्रणाली कंपाइल-टाइममध्ये त्रुटींना प्रतिबंधित करते, ज्यामुळे अवैध डेटा फॉरमॅटशी संबंधित रनटाइम समस्यांची शक्यता कमी होते.
- सुधारित कोड वाचनीयता: स्पष्टपणे परिभाषित केलेले रेगएक्स पॅटर्न कोडला अधिक समजण्यायोग्य आणि देखरेख करण्यायोग्य बनवतात, विशेषतः आंतरराष्ट्रीय डेव्हलपमेंट टीम्ससोबत काम करताना.
- बग्समध्ये घट: लवकर व्हॅलिडेशन केल्याने रनटाइमपर्यंत पोहोचण्यापूर्वीच त्रुटी पकडल्या जातात, ज्यामुळे अनपेक्षित वर्तनाची शक्यता कमी होते आणि एकूण सॉफ्टवेअर गुणवत्ता सुधारते.
- वाढलेली देखभालक्षमता: योग्यरित्या टाइप केलेले आणि प्रमाणित केलेले स्ट्रिंग्स सुधारित करणे आणि रिफॅक्टर करणे सोपे असते, जे विकसित होत असलेल्या सॉफ्टवेअर प्रकल्पांमध्ये महत्त्वाचे आहे.
- सरलीकृत डीबगिंग: कंपाइल-टाइम व्हॅलिडेशन संभाव्य समस्या लवकर ओळखून डीबगिंग प्रक्रिया सोपी करते.
टाइपस्क्रिप्टमध्ये रेगएक्स-व्हॅलिडेटेड स्ट्रिंग्सची अंमलबजावणी
टाइपस्क्रिप्ट रेगएक्स-व्हॅलिडेटेड स्ट्रिंग्सची अंमलबजावणी करण्यासाठी अनेक दृष्टिकोन प्रदान करते. सर्वात सामान्य पद्धतीमध्ये लिटरल टाइप्स, टेम्पलेट लिटरल टाइप्स आणि टाइप असर्शन यांचा वापर समाविष्ट आहे. चला, जागतिक विचारांचे महत्त्व लक्षात घेऊन, व्यावहारिक उदाहरणांसह या तंत्रांचा शोध घेऊया.
१. लिटरल टाइप्स आणि टेम्पलेट लिटरल टाइप्स
हा दृष्टिकोन आपल्याला एक असा प्रकार परिभाषित करण्याची परवानगी देतो जो एका विशिष्ट रेगएक्स पॅटर्नशी जुळतो. हे टाइपस्क्रिप्टच्या प्रकार परिभाषांमध्ये स्ट्रिंग लिटरल दर्शविण्याच्या क्षमतेचा फायदा घेते.
type Email = `${string}@${string}.${string}`;
function isValidEmail(email: string): email is Email {
const emailRegex = /^[\w-\.]+@([\w-]+\.)+[\w-]{2,4}$/;
return emailRegex.test(email);
}
function sendEmail(email: Email, subject: string, body: string): void {
console.log(`Sending email to ${email} with subject: ${subject}`);
}
const validEmail: Email = 'test@example.com';
sendEmail(validEmail, 'Hello', 'This is a test email.');
const invalidEmail = 'invalid-email';
if (isValidEmail(invalidEmail)) {
sendEmail(invalidEmail, 'Hello', 'This is a test email.');
}
या उदाहरणात, Email
प्रकार एका टेम्पलेट लिटरलचा वापर करून परिभाषित केला आहे जो संकल्पनात्मकदृष्ट्या ईमेल पत्त्याच्या संरचनेचे प्रतिनिधित्व करतो. तथापि, ही पद्धत प्रकार स्तरावर रेगएक्स व्हॅलिडेशन लागू करत नाही. आपल्याला ते प्रमाणित करण्यासाठी isValidEmail
सारख्या फंक्शनचा वापर करावा लागेल, आणि नंतर टाइप गार्ड्स वापरावे लागतील. ही पद्धत आपल्याला एक प्रकार-सुरक्षित यंत्रणा देते.
२. रेगएक्स व्हॅलिडेशनसह टाइप असर्शन
या पद्धतीत स्ट्रिंग एका विशिष्ट प्रकाराशी जुळते हे टाइपस्क्रिप्टला स्पष्टपणे सांगण्यासाठी टाइप असर्शनचा वापर केला जातो. जरी हे कंपाइल-टाइममध्ये कमी सुरक्षा देत असले तरी, व्यावहारिक दृष्टिकोनासाठी ते रनटाइम व्हॅलिडेशनसोबत जोडले जाऊ शकते.
interface ValidatedString {
value: string;
isValid: boolean;
}
function validateString(input: string, regex: RegExp): ValidatedString {
return {
value: input,
isValid: regex.test(input)
};
}
const phoneNumberRegex = /^\+?[1-9]\d{1,14}$/;
const phoneNumberInput = '+15551234567';
const validatedPhoneNumber = validateString(phoneNumberInput, phoneNumberRegex);
if (validatedPhoneNumber.isValid) {
const phoneNumber = validatedPhoneNumber.value as string; // Type assertion
console.log(`Valid phone number: ${phoneNumber}`);
} else {
console.log('Invalid phone number');
}
या उदाहरणात, validateString
फंक्शन एक स्ट्रिंग आणि एक रेगएक्स घेते. ते मूळ स्ट्रिंग आणि ते रेगएक्सशी जुळते की नाही हे दर्शविणारे एक बुलियन असलेले ऑब्जेक्ट परत करते. एकदा प्रमाणित झाल्यावर परत आलेली स्ट्रिंग योग्य प्रकारची आहे याची खात्री करण्यासाठी टाइप असर्शनचा वापर केला जातो. हा दृष्टिकोन लवचिक व्हॅलिडेशनला अनुमती देतो, परंतु प्रमाणित मूल्याचा योग्य वापर सुनिश्चित करण्याची जबाबदारी डेव्हलपरवर असते. हे विशेषतः आंतरराष्ट्रीय फोन नंबर्ससाठी उपयुक्त आहे, जिथे स्वरूप बदलते.
३. थर्ड-पार्टी लायब्ररी वापरणे
अनेक लायब्ररी टाइपस्क्रिप्टमध्ये रेगएक्स व्हॅलिडेशनची प्रक्रिया सोपी करू शकतात. या लायब्ररी अनेकदा अधिक प्रगत वैशिष्ट्ये देतात आणि आवश्यक बॉयलरप्लेट कोड कमी करतात. एक सामान्य पर्याय म्हणजे स्ट्रिंगला रॅप करण्यासाठी एक कस्टम प्रकार तयार करणे आणि त्या प्रकारात स्ट्रिंग प्रमाणित करणे. zod
किंवा superstruct
सारख्या लायब्ररी डेटा व्हॅलिडेशनसाठी मजबूत उपाय प्रदान करतात, ज्यात रेगएक्स-आधारित व्हॅलिडेशनचा समावेश आहे. या लायब्ररींमध्ये सहसा अंगभूत प्रकार अनुमान (type inference) असते जे मदत करते. जर तुम्ही अधिक व्यापक व्हॅलिडेशन फ्रेमवर्क शोधत असाल तर या पर्यायांचा विचार करा.
import * as z from 'zod';
const emailSchema = z.string().email();
try {
const validatedEmail = emailSchema.parse('valid.email@example.com');
console.log(`Validated email: ${validatedEmail}`);
}
catch (error) {
console.error((error as z.ZodError).errors);
}
येथे झॉड (Zod) चा वापर करून ईमेल स्कीमा परिभाषित केली आहे, आणि .parse()
वापरून ईमेल प्रमाणित केले आहे.
स्ट्रिंग व्हॅलिडेशनसाठी जागतिक विचार
जागतिक प्रेक्षकांसाठी ॲप्लिकेशन्स डिझाइन करताना, आंतरराष्ट्रीय डेटा फॉरमॅटच्या बारकाव्यांचा विचार करणे महत्त्वाचे आहे. हे विचार तुम्ही रेगएक्स कसे लिहिता आणि स्ट्रिंग इनपुट कसे प्रमाणित करता यावर थेट प्रभाव टाकतात.
१. फोन नंबर व्हॅलिडेशन
देशानुसार फोन नंबरचे स्वरूप लक्षणीयरीत्या बदलते. एक मजबूत उपाय म्हणजे अनेकदा भिन्न स्वरूप आणि उपसर्ग यांना परवानगी देणे. एकाच रेगएक्सऐवजी, अनेक रेगएक्स पॅटर्न वापरण्याचा किंवा विविध देश कोड आणि नंबर फॉरमॅट हाताळणाऱ्या लायब्ररीचा वापर करून लवचिक स्वरूपाला परवानगी देण्याचा विचार करा. उदाहरणार्थ, यूएसमध्ये एक रचना आहे, पण भारतामध्ये ती पूर्णपणे वेगळी आहे. फोन नंबरची उदाहरणे विचारात घ्या:
- युनायटेड स्टेट्स: (555) 123-4567 किंवा 555-123-4567 किंवा 5551234567
- युनायटेड किंगडम: +44 20 7123 4567 किंवा 020 7123 4567
- भारत: +91 9876543210 किंवा 09876543210
तुमच्या रेगएक्सने देशावर अवलंबून बदल, उपसर्ग (+, 00), आणि अंकांची संख्या हाताळली पाहिजे. विविध देशांतील सर्व कोड समाविष्ट करणारी लायब्ररी वापरल्याने हा पैलू सोपा होतो.
२. पत्ता व्हॅलिडेशन
जगभरात पत्त्यांचे स्वरूप अत्यंत वैविध्यपूर्ण आहे, ज्यात पत्त्याच्या ओळी, पिन कोड, आणि राज्ये/प्रांत यांच्यासाठी भिन्न क्रम आणि लांबी असते. पत्ता व्हॅलिडेशन लायब्ररी आणि एपीआय वापरण्याचा विचार करा जे प्रदेशानुसार पत्ते पार्स आणि प्रमाणित करू शकतात, किंवा विशिष्ट प्रदेशावर आधारित पत्त्याचे भाग आणि व्हॅलिडेशनला परवानगी देऊ शकतात आणि वापरकर्त्यांना मुक्त-स्वरूपात पत्ता इनपुट करण्याची परवानगी देऊ शकतात.
३. तारीख आणि वेळ स्वरूप
तारीख आणि वेळेचे स्वरूप (उदा., DD/MM/YYYY, MM/DD/YYYY, YYYY-MM-DD) मोठ्या प्रमाणात बदलते. स्थानिकीकरण लायब्ररीद्वारे अनेकदा विविध स्वरूप हाताळण्यासाठी तयार रहा. वापरकर्त्यांना त्यांचे पसंतीचे स्वरूप निवडण्याची परवानगी द्या किंवा सुधारित वापरकर्त्याच्या अनुभवासाठी त्यांच्या प्रदेश-आधारित सेटिंग्ज स्वयंचलितपणे ओळखा. पर्याय आणि सूचना द्या किंवा इनपुटनंतर स्वयंचलित स्वरूपन प्रदान करा.
४. चलन स्वरूप
चलन चिन्हे, दशांश विभाजक, आणि हजार विभाजक संस्कृतीनुसार भिन्न असतात. तुमचे ॲप्लिकेशन स्थानिक केले आहे याची खात्री करा आणि प्रत्येक प्रदेशात वापरले जाणारे चलन स्वरूप विचारात घ्या. केवळ संख्यात्मक भागांचे व्हॅलिडेशन करा आणि विविध चलन स्वरूपांना समर्थन देणाऱ्या लायब्ररी वापरून आउटपुट फॉरमॅट करा.
५. नावांचे स्वरूप
विविध संस्कृतींमध्ये नावांचे स्वरूप लक्षणीयरीत्या बदलते. काही संस्कृतींमध्ये अनेक नावे, उपसर्ग (श्री., सौ., डॉ.), आणि प्रत्यय (ज्येष्ठ, कनिष्ठ) वापरले जातात. नावांमध्ये भिन्न लांबी आणि विशेष वर्णांना परवानगी द्या आणि आवश्यक नसल्यास कठोर व्हॅलिडेशन टाळा. उदाहरणार्थ, सर्व नावांमध्ये दोन भाग (पहिले आणि शेवटचे) किंवा मधले नाव असते असे गृहीत धरणे टाळा.
६. इनपुट पद्धतींचा विचार
उदाहरणार्थ, अनेक आशियाई भाषांमध्ये, वापरकर्ते अक्षरे टाइप करण्यासाठी इनपुट मेथड एडिटर (IMEs) वापरू शकतात. यामध्ये बहु-वर्ण संयोजनांचा वापर होऊ शकतो. विशेष वर्णांवर निर्बंध लादणे टाळा आणि तुमचा रेगएक्स विविध IMEs कडील इनपुटशी सुसंगत असल्याची खात्री करा.
७. कॅरॅक्टर एन्कोडिंग आणि युनिकोड सपोर्ट
विविध भाषांमधील वर्णांच्या विस्तृत श्रेणीला समर्थन देण्यासाठी युनिकोड वापरा. तुमचे ॲप्लिकेशन UTF-8 एन्कोडिंग योग्यरित्या हाताळते आणि तुमचे रेगएक्स एक्सप्रेशन्स जगभरातील भाषांसाठी वर्ण संच हाताळण्यासाठी याचा विचार करतात याची खात्री करा. हे इमोजीच्या सुसंगततेसाठी देखील मदत करेल.
जागतिक ॲप्लिकेशन्समध्ये रेगएक्स-व्हॅलिडेटेड स्ट्रिंग्ससाठी सर्वोत्तम पद्धती
- सोपे ठेवा: तुमच्या गरजा पूर्ण करणारा सर्वात सोपा रेगएक्स पॅटर्न वापरा. जटिल रेगएक्स पॅटर्न समजण्यास आणि देखरेख करण्यास कठीण असू शकतात.
- सखोल चाचणी करा: तुमच्या रेगएक्स पॅटर्नची नेहमीच विविध प्रदेशांमधील वैध आणि अवैध इनपुटसह सर्वसमावेशक चाचणी प्रकरणांच्या संचासह चाचणी करा. स्वयंचलित युनिट टेस्ट्स वापरण्याचा विचार करा.
- स्पष्टपणे दस्तऐवजीकरण करा: तुमच्या रेगएक्स पॅटर्न आणि त्यांच्या उद्देशाचे दस्तऐवजीकरण करा, विशेषतः टीमसोबत काम करताना. पॅटर्नमागील तर्क स्पष्ट करा.
- लायब्ररी वापरा: जटिल व्हॅलिडेशन कार्यांसाठी लायब्ररी किंवा एपीआय वापरा, विशेषतः आंतरराष्ट्रीय डेटा फॉरमॅट हाताळताना. या लायब्ररी अनेकदा आंतरराष्ट्रीय फॉरमॅटची जटिलता हाताळतात.
- उपयुक्त त्रुटी संदेश द्या: व्हॅलिडेशन अयशस्वी झाल्यास, माहितीपूर्ण त्रुटी संदेश द्या जे वापरकर्त्यांना समस्या समजून घेण्यास आणि ती कशी दुरुस्त करावी यासाठी मदत करतील. वापरकर्त्यांना चुका सुधारण्यास मदत करा.
- लवचिकतेसाठी परवानगी द्या: जिथे शक्य असेल तिथे, इनपुट फॉरमॅटमधील बदलांना परवानगी द्या. विविध देशांतील वापरकर्त्यांच्या वेगवेगळ्या अपेक्षा आणि इनपुट सवयी असतील.
- नियमितपणे पुनरावलोकन आणि अद्यतन करा: विकसित होत असलेल्या डेटा फॉरमॅट आणि वापरकर्त्याच्या अभिप्रायावर आधारित आपले व्हॅलिडेशन नियम नियमितपणे तपासा आणि आवश्यकतेनुसार अद्यतनित करा.
- आंतरराष्ट्रीयीकरण आणि स्थानिकीकरण (i18n & l10n): विविध भाषांमध्ये स्थानिकीकरण आणि भाषांतर सुलभ करण्यासाठी आंतरराष्ट्रीयीकरणाचा विचार करून आपले ॲप्लिकेशन्स डिझाइन करा.
- वापरकर्ता अनुभव विचारात घ्या: वापरकर्त्याला त्वरित अभिप्राय देण्यासाठी आणि वापरकर्ता अनुभव सुधारण्यासाठी रिअल-टाइममध्ये इनपुट प्रमाणित करा.
कृतीशील अंतर्दृष्टी आणि व्यावहारिक शिफारसी
तुमच्या जागतिक ॲप्लिकेशन्समध्ये रेगएक्स-व्हॅलिडेटेड स्ट्रिंग्स प्रभावीपणे लागू करण्यासाठी, या व्यावहारिक चरणांचा विचार करा:
१. आगाऊ योजना करा:
कोणताही कोड लिहिण्यापूर्वी, आपल्याला समर्थन देण्याची आवश्यकता असलेल्या डेटा फॉरमॅटचे आणि विविध प्रदेशांमधील संभाव्य भिन्नतेचे सखोल विश्लेषण करा. आपण हाताळणार असलेल्या सामान्य फॉरमॅट आणि एज केसेसचा तपशील देणारा एक दस्तऐवज तयार करा.
२. योग्य साधने निवडा:
रेगएक्स व्हॅलिडेशन आणि आंतरराष्ट्रीयीकरणासाठी ठोस समर्थन देणाऱ्या लायब्ररी आणि साधने निवडा. लोकप्रिय पर्यायांमध्ये समाविष्ट आहे:
- व्हॅलिडेशनसाठी: Zod, Yup, Superstruct
- i18n/l10n साठी: i18next, formatjs
३. साधेपणापासून सुरुवात करा आणि पुनरावृत्ती करा:
मूलभूत व्हॅलिडेशन नियमांपासून सुरुवात करा आणि आवश्यकतेनुसार हळूहळू अधिक जटिल नियम जोडा. वापरकर्त्यांच्या अभिप्रायावर आधारित व्हॅलिडेशन नियमांमध्ये सतत सुधारणा करा.
४. चाचणी करा आणि सुधारणा करा:
एक सर्वसमावेशक युनिट टेस्ट्सचा संच तयार करा जो तुमच्या सर्व व्हॅलिडेशन नियमांना कव्हर करतो आणि विविध प्रदेशांमधून विविध डेटा इनपुट हाताळतो. त्रुटी लवकर पकडणारी स्वयंचलित चाचणी साधने वापरा.
५. तुमच्या टीमला शिक्षित करा:
तुमच्या टीममधील सदस्य टाइपस्क्रिप्ट, रेगएक्स आणि आंतरराष्ट्रीय डेटा फॉरमॅटच्या बारकाव्यांमध्ये पारंगत आहेत याची खात्री करा. तुमच्या टीममध्ये ज्ञान-वाटणीला प्रोत्साहन द्या.
६. वापरकर्त्यांच्या अभिप्रायाचा स्वीकार करा:
वापरकर्त्यांचा अभिप्राय गोळा करा आणि या माहितीच्या आधारे आवश्यक बदल करा. वापरकर्ते तुम्हाला उत्तम अंतर्दृष्टी देतात ज्याचा तुम्ही विचार करू शकता. जर वापरकर्त्यांना व्हॅलिडेशनमध्ये अडचण येत असेल, तर तुमच्या अंमलबजावणीत बदल करा.
निष्कर्ष
टाइपस्क्रिप्ट रेगएक्स-व्हॅलिडेटेड स्ट्रिंग्स लागू करण्यासाठी एक मजबूत आणि कार्यक्षम दृष्टिकोन प्रदान करते, जो विश्वसनीय आणि देखरेख करण्यायोग्य जागतिक ॲप्लिकेशन्स तयार करण्याचा एक महत्त्वाचा घटक आहे. प्रकार प्रणालीचा फायदा घेऊन आणि रेगएक्सच्या शक्तीचा उपयोग करून, डेव्हलपर त्यांच्या कोडची गुणवत्ता लक्षणीयरीत्या सुधारू शकतात, रनटाइम त्रुटींचा धोका कमी करू शकतात आणि जगभरातील वापरकर्त्यांसाठी वापरकर्ता अनुभव वाढवू शकतात. सर्वोत्तम पद्धतींचा अवलंब करून, डेटा फॉरमॅटमधील जागतिक भिन्नता विचारात घेऊन आणि योग्य साधनांचा वापर करून, डेव्हलपर असे ॲप्लिकेशन्स तयार करू शकतात जे केवळ प्रकार-सुरक्षितच नाहीत, तर विविध आंतरराष्ट्रीय प्रेक्षकांसाठी प्रवेशयोग्य आणि वापरण्यायोग्य देखील आहेत.
नेहमी वापरकर्त्याच्या अनुभवाला प्राधान्य द्या आणि वापरकर्त्यांना त्यांचे इनपुट समजून घेण्यास आणि दुरुस्त करण्यात मदत करण्यासाठी स्पष्ट, माहितीपूर्ण त्रुटी संदेश द्या. वापरकर्त्यांच्या अभिप्रायावर आणि बदलत्या डेटा फॉरमॅटवर आधारित आपले व्हॅलिडेशन नियम सतत तपासा आणि परिष्कृत करा. हा दृष्टिकोन केवळ तुमच्या ॲप्लिकेशनची मजबूती सुनिश्चित करत नाही, तर सर्वसमावेशकता आणि जागतिक वापरकर्ता आधार यांच्याप्रती वचनबद्धता देखील दर्शवतो.