JavaScript இல் வரையறுக்கப்படாத மாறிகளைக் கண்டறிதல்
ஜாவாஸ்கிரிப்ட்டில், ஒரு மாறி "வரையறுக்கப்படவில்லை" என்பதை தீர்மானிப்பது டெவலப்பர்கள் அடிக்கடி சந்திக்கும் ஒரு பொதுவான பணியாகும். ஜாவாஸ்கிரிப்ட்டின் மாறும் தன்மையைக் கருத்தில் கொண்டு, மாறிகள் சில நேரங்களில் தற்செயலாக வரையறுக்கப்படாமல் விடப்படலாம், இது சாத்தியமான பிழைகள் மற்றும் குறியீடு செயல்படுத்தலில் எதிர்பாராத நடத்தைக்கு வழிவகுக்கும்.
ஒரு மாறி வரையறுக்கப்படாததா என்பதைச் சரிபார்க்க பல்வேறு முறைகள் உள்ளன, ஒவ்வொன்றும் அதன் சொந்த நுணுக்கங்கள் மற்றும் தாக்கங்களைக் கொண்டுள்ளன. இந்தச் சரிபார்ப்பைச் செய்வதற்கான மிகவும் பொருத்தமான மற்றும் திறமையான வழியைப் புரிந்துகொள்வது வலுவான மற்றும் பிழையற்ற ஜாவாஸ்கிரிப்ட் குறியீட்டை எழுதுவதற்கு முக்கியமானது.
| கட்டளை | விளக்கம் |
|---|---|
| typeof | மதிப்பிடப்படாத செயல்பாட்டின் வகையைக் குறிக்கும் சரத்தை வழங்குகிறது. |
| try/catch | பிழை ஏற்பட்டால், குறியீட்டின் தொகுதியைப் பிடித்து செயல்படுத்துவதன் மூலம் விதிவிலக்குகளைக் கையாளப் பயன்படுகிறது. |
| window.myVariable | உலாவி சூழலில் சாளர பொருளில் வரையறுக்கப்பட்ட உலகளாவிய மாறியைக் குறிக்கிறது. |
| express | வலை பயன்பாடுகள் மற்றும் APIகளை உருவாக்க பயன்படும் Node.js க்கான வலை கட்டமைப்பு. |
| app.get() | ஒரு குறிப்பிட்ட பாதைக்கான GET கோரிக்கைகளுக்கான வழி கையாளுதலை வரையறுக்கிறது. |
| app.listen() | சேவையகத்தைத் தொடங்கி, இணைப்புகளுக்கான குறிப்பிட்ட போர்ட்டில் கேட்கிறது. |
ஜாவாஸ்கிரிப்ட் வரையறுக்கப்படாத சோதனைகளைப் புரிந்துகொள்வது
மேலே உள்ள எடுத்துக்காட்டுகளில் உருவாக்கப்பட்ட ஸ்கிரிப்டுகள் ஜாவாஸ்கிரிப்ட்டில் ஒரு மாறி வரையறுக்கப்படவில்லையா என்பதைச் சரிபார்க்க பல்வேறு முறைகளை நிரூபிக்க வடிவமைக்கப்பட்டுள்ளது. முதல் ஸ்கிரிப்ட்டில், நாம் பயன்படுத்துகிறோம் ஆபரேட்டர், இது மதிப்பிடப்படாத செயல்பாட்டின் வகையைக் குறிக்கும் சரத்தை வழங்குகிறது. இந்த முறை வலுவானது, ஏனெனில் மாறி உண்மையில் வரையறுக்கப்படாமல் இருந்தால் அது பிழையை ஏற்படுத்தாது. இரண்டாவது முறையானது, உள்ள மாறியின் இருப்பை சரிபார்க்க ஒரு எளிய if அறிக்கையைப் பயன்படுத்துகிறது பொருள், உலாவி சூழலில் உலகளாவிய மாறிகளுக்கு பயனுள்ளதாக இருக்கும். இந்த அணுகுமுறை சில நேரங்களில் குறைந்த நம்பகத்தன்மை கொண்டதாக இருக்கலாம், ஏனெனில் இது சில நோக்கங்களுக்குள் மட்டுமே செயல்படுகிறது.
மூன்றாவது முறை a வரையறுக்கப்படாத ஒரு மாறியை அணுகும்போது சாத்தியமான பிழைகளைக் கையாள தடுக்கவும். மாறி வரையறுக்கப்படாவிட்டாலும் குறியீடு செயல்படுத்தல் சீராக தொடர்வதை இது உறுதி செய்கிறது, மேலும் கணிக்க முடியாத சூழ்நிலைகளுக்கு இது பாதுகாப்பான விருப்பமாக அமைகிறது. சர்வர் பக்கத்தில், Node.js ஸ்கிரிப்ட் பயன்படுத்துகிறது , HTTP கோரிக்கைகளை கையாள ஒரு பிரபலமான வலை கட்டமைப்பு. வரையறுக்கப்பட்ட பாதை ரூட் பாதையில் GET கோரிக்கைகளை செயலாக்குகிறது, மாறியின் நிலையை சரிபார்த்து பொருத்தமான பதிலை அனுப்புகிறது. தி app.listen() செயல்பாடு சேவையகத்தைத் தொடங்குகிறது, இது ஒரு குறிப்பிட்ட போர்ட்டில் உள்வரும் இணைப்புகளைக் கேட்க அனுமதிக்கிறது. இந்த முறைகள், முன்பக்கம் அல்லது பின்தளத்தில் பயன்படுத்தப்பட்டாலும், JavaScript பயன்பாடுகளில் வரையறுக்கப்படாத மாறிகளை திறம்பட நிர்வகிப்பதற்கான அத்தியாவசிய கருவிகளாகும்.
JavaScript ஐப் பயன்படுத்தி "வரையறுக்கப்படாதது" என்பதைச் சரிபார்க்கிறது
ஜாவாஸ்கிரிப்ட் ஃப்ரென்ட் ஸ்கிரிப்ட்
// Method 1: Using typeoflet myVariable;if (typeof myVariable === 'undefined') {console.log('myVariable is undefined');} else {console.log('myVariable is defined');}// Method 2: Using if statement with window objectif (window.myVariable) {console.log('myVariable is defined');} else {console.log('myVariable is undefined');}// Method 3: Using try/catch blocktry {if (myVariable) {console.log('myVariable is defined');}} catch (error) {console.log('myVariable is undefined');}
சர்வரில் வரையறுக்கப்படாத மாறிகளை சரிபார்க்கிறது
Node.js பின்தள ஸ்கிரிப்ட்
const express = require('express');const app = express();const port = 3000;app.get('/', (req, res) => {let myVariable;// Method 1: Using typeofif (typeof myVariable === 'undefined') {res.send('myVariable is undefined');} else {res.send('myVariable is defined');}});app.listen(port, () => {console.log(`Server running at http://localhost:${port}`);});
JavaScript இல் வரையறுக்கப்படாததைச் சரிபார்ப்பதற்கான மேம்பட்ட முறைகள்
முன்னர் விவாதிக்கப்பட்ட அடிப்படை முறைகளுக்கு கூடுதலாக, ஜாவாஸ்கிரிப்ட்டில் ஒரு மாறி வரையறுக்கப்படவில்லை என்பதை சரிபார்க்க மற்றொரு மேம்பட்ட நுட்பம் செயல்பாடுகளில் இயல்புநிலை அளவுருக்களைப் பயன்படுத்துகிறது. இயல்புநிலை அளவுருவுடன் ஒரு செயல்பாட்டை வரையறுப்பதன் மூலம், ஒரு வாதம் வழங்கப்படாவிட்டால் அல்லது வெளிப்படையாக வரையறுக்கப்படாமல் இருந்தால், ஃபால்பேக் மதிப்பை வழங்கலாம். இந்த அணுகுமுறை பிழைகளை ஏற்படுத்தாமல் அல்லது கூடுதல் சரிபார்ப்புகள் தேவைப்படாமல் செயல்பாடு வரையறுக்கப்படாத மதிப்புகளைக் கையாள முடியும் என்பதை உறுதி செய்கிறது. செயல்பாடுகள் விருப்ப வாதங்களைக் கையாளும் என்று எதிர்பார்க்கப்படும் சூழ்நிலைகளில் இந்த நுட்பம் மிகவும் பயனுள்ளதாக இருக்கும்.
மற்றொரு முறை நவீன ஜாவாஸ்கிரிப்ட் அம்சங்களான விருப்ப சங்கிலி மற்றும் பூஜ்ய ஒருங்கிணைப்பு போன்றவற்றைப் பயன்படுத்துகிறது. விருப்பச் சங்கிலியானது, வரையறுக்கப்படாத ஒவ்வொரு நிலையையும் வெளிப்படையாகச் சரிபார்க்காமல், ஆழமாக உள்ளமைக்கப்பட்ட பொருள் பண்புகளை பாதுகாப்பாக அணுக உங்களை அனுமதிக்கிறது. இதைப் பயன்படுத்தி செய்யப்படுகிறது இயக்குபவர். சூன்யமான ஒருங்கிணைப்பு, குறிக்கப்படுகிறது ஆபரேட்டர், மாறி பூஜ்யமாகவோ அல்லது வரையறுக்கப்படாமலோ இருந்தால் மட்டுமே இயல்புநிலை மதிப்பிற்கு திரும்புவதற்கான வழியை வழங்குகிறது. இந்த அம்சங்கள் குறியீட்டை எளிதாக்குகின்றன மற்றும் சொற்கள் நிபந்தனை சரிபார்ப்புகளின் தேவையைக் குறைக்கின்றன, குறியீட்டை மேலும் படிக்கக்கூடியதாகவும் பராமரிக்கக்கூடியதாகவும் ஆக்குகிறது.
- எந்த வகையான ஆபரேட்டர் பயன்படுத்தப்படுகிறது?
- தி ஆபரேட்டர், மதிப்பிடப்படாத செயல்பாட்டின் வகையைக் குறிக்கும் ஒரு சரத்தை வழங்குகிறது, இது ஒரு மாறி வரையறுக்கப்படவில்லை என்பதைச் சரிபார்க்க உதவுகிறது.
- வரையறுக்கப்படாத மாறிகளைக் கையாள சிறந்த வழி எது?
- கலவையைப் பயன்படுத்துதல் காசோலைகள், இயல்புநிலை அளவுருக்கள் மற்றும் விருப்ப செயினிங் மற்றும் nullish coalescing போன்ற நவீன அம்சங்கள்.
- பிழைகளை ஏற்படுத்தாமல் வரையறுக்கப்படாததைச் சரிபார்க்க முடியுமா?
- ஆம், பயன்படுத்துவதன் மூலம் , தொகுதிகள், மற்றும் விருப்ப சங்கிலி.
- விருப்ப சங்கிலி என்றால் என்ன?
- விருப்ப சங்கிலி, பயன்படுத்தி , வெளிப்படையான வரையறுக்கப்படாத காசோலைகள் இல்லாமல் உள்ளமை சொத்துக்களை பாதுகாப்பான அணுகலை அனுமதிக்கிறது.
- nullish coalescing எப்படி வேலை செய்கிறது?
- சூன்யமாக ஒன்றிணைத்தல், பயன்படுத்துதல் , மாறியானது பூஜ்யமாகவோ அல்லது வரையறுக்கப்படாததாகவோ இருந்தால் மட்டுமே வீழ்ச்சி மதிப்பை வழங்குகிறது.
- செயல்பாடுகளில் இயல்புநிலை அளவுருக்கள் என்ன?
- இயல்புநிலை அளவுருக்கள், வாதம் வழங்கப்படாவிட்டாலோ அல்லது வரையறுக்கப்படாமலோ இருந்தால், இயல்புநிலை மதிப்பைப் பயன்படுத்த செயல்பாடுகளை அனுமதிக்கும்.
- window.myVariable எப்படி வேலை செய்கிறது?
- உலாவி சூழலில் உள்ள சாளர பொருளில் உலகளாவிய மாறி உள்ளதா என்பதை இது சரிபார்க்கிறது.
- வரையறுக்கப்படாத காசோலைகளுக்கு முயற்சி/பிடிப்பை ஏன் பயன்படுத்த வேண்டும்?
- வரையறுக்கப்படாத மாறிகளை அணுகும்போது சாத்தியமான பிழைகளை அழகாகக் கையாள இது உதவுகிறது.
ஜாவாஸ்கிரிப்ட்டில், வரையறுக்கப்படாத மாறிகளை சரிபார்ப்பது வலுவான நிரலாக்கத்திற்கு முக்கியமானது. போன்ற முறைகளைப் பயன்படுத்துதல் காசோலைகள், இயல்புநிலை அளவுருக்கள் மற்றும் விருப்ப சங்கிலி போன்ற நவீன அம்சங்கள் மற்றும் குறியீடு நம்பகத்தன்மை மற்றும் வாசிப்புத்திறனை உறுதி செய்கிறது. இந்த நுட்பங்களைப் புரிந்துகொண்டு பயன்படுத்துவதன் மூலம், டெவலப்பர்கள் மாறி நிலைகளை திறம்பட நிர்வகிக்கலாம் மற்றும் எதிர்பாராத பிழைகளைத் தடுக்கலாம், மேலும் பராமரிக்கக்கூடிய மற்றும் திறமையான JavaScript பயன்பாடுகளுக்கு வழிவகுக்கும்.