ஜாவாஸ்கிரிப்ட் ஆப்ஜெக்ட் அல்லது அரேயில் ஒரு விசை இருக்கிறதா என்பதை எவ்வாறு தீர்மானிப்பது

ஜாவாஸ்கிரிப்ட் ஆப்ஜெக்ட் அல்லது அரேயில் ஒரு விசை இருக்கிறதா என்பதை எவ்வாறு தீர்மானிப்பது
JavaScript

ஜாவாஸ்கிரிப்டில் முக்கிய இருப்பைப் புரிந்துகொள்வது

ஜாவாஸ்கிரிப்ட் பொருள்கள் மற்றும் வரிசைகளுடன் பணிபுரியும் போது, ​​ஒரு குறிப்பிட்ட விசையின் இருப்பை எவ்வாறு சரிபார்க்க வேண்டும் என்பதை அறிவது முக்கியம். இந்த அறிவு சாத்தியமான பிழைகளைத் தவிர்க்க உதவுகிறது மற்றும் எதிர்பாராத குறுக்கீடுகள் இல்லாமல் உங்கள் குறியீடு சீராக இயங்குவதை உறுதி செய்கிறது. இந்த முறைகளைப் புரிந்துகொள்வது, பொருள்கள் மற்றும் வரிசைகளை மிகவும் திறம்பட கையாள உங்களை அனுமதிக்கும்.

இந்தக் கட்டுரையில், ஜாவாஸ்கிரிப்ட் பொருள் அல்லது அணிவரிசையில் ஒரு விசை உள்ளதா என்பதைத் தீர்மானிக்க பல்வேறு நுட்பங்களை ஆராய்வோம். கூடுதலாக, ஜாவாஸ்கிரிப்ட் இல்லாத விசையை அணுக முயற்சிக்கும் போது, ​​அது தவறானதா அல்லது பிழை ஏற்பட்டதா என்பதைப் பற்றி பேசுவோம். இந்தக் கருத்துகளில் தேர்ச்சி பெறுவதன் மூலம், நீங்கள் மிகவும் வலுவான மற்றும் பிழை இல்லாத ஜாவாஸ்கிரிப்ட் குறியீட்டை எழுதலாம்.

கட்டளை விளக்கம்
in operator ஒரு பொருளில் குறிப்பிட்ட விசை உள்ளதா எனச் சரிபார்க்கிறது. விசை கண்டுபிடிக்கப்பட்டால் உண்மை, இல்லையெனில் தவறு எனத் தரப்படும்.
hasOwnProperty() ஒரு பொருளுக்குச் சொந்தமான சொத்து இருக்கிறதா என்று சோதிக்கப் பயன்படுத்தப்படும் முறை (பரம்பரை அல்ல). விசை இருந்தால் சரி என்று திரும்பும்.
Array.prototype.some() வழங்கப்பட்ட செயல்பாட்டின் மூலம் செயல்படுத்தப்படும் சோதனையில் அணிவரிசையில் உள்ள ஒரு உறுப்பு தேர்ச்சி பெறுகிறதா என்பதைச் சோதிக்கும் முறை.
Array.prototype.every() வழங்கப்பட்ட செயல்பாட்டின் மூலம் செயல்படுத்தப்பட்ட சோதனையில் வரிசையில் உள்ள அனைத்து கூறுகளும் தேர்ச்சி பெறுகின்றனவா என்பதைச் சோதிக்கும் முறை.
undefined துவக்கப்படாத மாறி அல்லது இல்லாத பொருளின் மதிப்பைக் குறிக்கிறது.
ternary operator if அறிக்கைக்கான சுருக்கெழுத்து. தொடரியல்: நிபந்தனை ? expr1 : expr2.

ஜாவாஸ்கிரிப்டில் முக்கிய இருப்பைச் சரிபார்ப்பதில் ஆழமாக மூழ்கவும்

வழங்கப்பட்ட எடுத்துக்காட்டுகளில், ஜாவாஸ்கிரிப்ட் பொருள் அல்லது அணிவரிசையில் விசை உள்ளதா என்பதைச் சரிபார்க்க பல்வேறு முறைகளை ஆராய்ந்தோம். முதல் அணுகுமுறை பயன்படுத்துவதை உள்ளடக்கியது in operator, இது ஒரு பொருளில் ஒரு குறிப்பிட்ட விசை உள்ளதா என்பதைச் சரிபார்த்து, அந்த விசை கண்டுபிடிக்கப்பட்டால் உண்மை என்பதைத் தரும், இல்லையெனில் தவறு. இந்த ஆபரேட்டர் ஒரு விசையின் இருப்பை விரைவாக தீர்மானிக்க நேரடியானது மற்றும் பயனுள்ளது. மற்றொரு முறை தி hasOwnProperty() ஒரு பொருளுக்குச் சொந்தமான சொத்து உள்ளதா என்பதைச் சரிபார்க்கும் முறை (பரம்பரை அல்ல). விசை இருந்தால் இந்த முறை உண்மையாக இருக்கும், அவற்றின் முன்மாதிரியிலிருந்து பண்புகளைப் பெறக்கூடிய பொருட்களைக் கையாளும் போது மிகவும் துல்லியமான சோதனையை வழங்குகிறது.

பொருள்களின் வரிசைகளுக்கு, நாங்கள் பயன்படுத்தினோம் Array.prototype.some() வழங்கப்பட்ட செயல்பாட்டின் மூலம் செயல்படுத்தப்பட்ட சோதனையில் வரிசையில் குறைந்தபட்சம் ஒரு உறுப்பு தேர்ச்சி பெறுகிறதா என்பதை சோதிக்கும் முறை. அணிவரிசையில் ஏதேனும் ஒரு பொருளில் குறிப்பிட்ட விசை உள்ளதா எனச் சரிபார்க்க இது பயனுள்ளதாக இருக்கும். இதேபோல், தி Array.prototype.every() வரிசையில் உள்ள அனைத்து கூறுகளும் சோதனையில் தேர்ச்சி பெறுகின்றனவா என்பதை இந்த முறை சோதிக்கிறது, அணிவரிசையில் உள்ள ஒவ்வொரு பொருளுக்கும் குறிப்பிட்ட விசை உள்ளது என்பதை உறுதிப்படுத்துகிறது. கூடுதலாக, இல்லாத விசைகளை அணுகும்போது, ​​ஜாவாஸ்கிரிப்ட் திரும்பும் undefined, பிழை எறியாமல் சாவி இல்லாததைக் குறிக்கிறது. இந்த நடத்தை பாதுகாப்பான அணுகல் சோதனைகளை அனுமதிக்கிறது. பயன்படுத்தியும் நிரூபித்தோம் ternary operator ஒரு சுருக்கமான நிபந்தனை சரிபார்ப்புக்கு, முக்கிய இருப்பை தீர்மானிக்க if அறிக்கைக்கான சுருக்கெழுத்தை வழங்குகிறது.

ஜாவாஸ்கிரிப்ட் பொருளில் முக்கிய இருப்பை சரிபார்க்கிறது

ஜாவாஸ்கிரிப்ட் ஃப்ரென்ட் ஸ்கிரிப்ட்

// Example 1: Using the "in" Operator
let obj = { name: "John", age: 30, city: "New York" };
if ("name" in obj) {
    console.log("The key 'name' exists in the object.");
} else {
    console.log("The key 'name' does not exist in the object.");
}

// Example 2: Using the "hasOwnProperty" Method
if (obj.hasOwnProperty("age")) {
    console.log("The key 'age' exists in the object.");
} else {
    console.log("The key 'age' does not exist in the object.");
}

பொருள்களின் ஜாவாஸ்கிரிப்ட் வரிசையில் முக்கிய இருப்பை சரிபார்க்கிறது

ஜாவாஸ்கிரிப்ட் ஃப்ரென்ட் ஸ்கிரிப்ட்

// Example 1: Using "Array.prototype.some" Method
let arr = [
    { id: 1, name: "Alice" },
    { id: 2, name: "Bob" }
];
let keyExists = arr.some(item => item.hasOwnProperty("id"));
console.log(keyExists); // true

// Example 2: Checking Multiple Keys in Array of Objects
let keysExist = arr.every(item => item.hasOwnProperty("id") && item.hasOwnProperty("name"));
console.log(keysExist); // true

ஜாவாஸ்கிரிப்ட் பொருள்களில் இல்லாத விசைகளைக் கையாளுதல்

ஜாவாஸ்கிரிப்ட் ஃப்ரென்ட் ஸ்கிரிப்ட்

// Example 1: Accessing Non-existent Key
let nonExistentKey = obj["address"];
if (nonExistentKey === undefined) {
    console.log("The key 'address' does not exist in the object.");
} else {
    console.log("The key 'address' exists in the object.");
}

// Example 2: Using Ternary Operator
let checkKey = obj["phone"] ? "Key exists" : "Key does not exist";
console.log(checkKey); // Key does not exist

Node.js இல் சர்வர் பக்க விசை இருப்பைச் சரிபார்க்கவும்

Node.js பின்தள ஸ்கிரிப்ட்

// Example 1: Using "in" Operator in Node.js
const data = { host: "localhost", port: 8080 };
if ("host" in data) {
    console.log("The key 'host' exists in the object.");
} else {
    console.log("The key 'host' does not exist in the object.");
}

// Example 2: Using "hasOwnProperty" in Node.js
if (data.hasOwnProperty("port")) {
    console.log("The key 'port' exists in the object.");
} else {
    console.log("The key 'port' does not exist in the object.");
}

ஜாவாஸ்கிரிப்டில் முக்கிய இருப்பைச் சரிபார்ப்பதற்கான மேம்பட்ட நுட்பங்கள்

ஜாவாஸ்கிரிப்ட் பொருள்கள் மற்றும் வரிசைகளில் முக்கிய இருப்பைச் சரிபார்ப்பதற்கான அடிப்படை முறைகளுக்கு அப்பால், டெவலப்பர்கள் மேம்பட்ட நுட்பங்கள் பயனுள்ளதாக இருக்கும் மிகவும் சிக்கலான காட்சிகளை அடிக்கடி சந்திக்கின்றனர். அத்தகைய ஒரு நுட்பம் பயன்படுத்துவதை உள்ளடக்கியது Object.keys() பொருளின் சொந்த சொத்துப் பெயர்களின் வரிசையை உருவாக்க. ஒரு குறிப்பிட்ட விசை இருப்பதைச் சரிபார்க்க இந்த வரிசையைத் தேடலாம். ஒரு பொருளில் உள்ள விசைகளின் பட்டியலை நீங்கள் கையாள அல்லது பகுப்பாய்வு செய்ய வேண்டியிருக்கும் போது இந்த முறை மிகவும் பயனுள்ளதாக இருக்கும்.

மற்றொரு அணுகுமுறை பயன்படுத்த வேண்டும் Reflect.has(), இது போலவே செயல்படுகிறது in operator ஆனால் புதிய பிரதிபலிப்பு API இன் ஒரு பகுதியாகும், இது பொருட்களைக் கையாள்வதற்கான நவீன மற்றும் விரிவான கருவித்தொகுப்பை வழங்குகிறது. Reflect.has() என்பது பிற பிரதிபலிப்பு முறைகளுடன் நிலையான நடத்தையை நீங்கள் விரும்பும் சூழல்களில் குறிப்பாக பயனுள்ளதாக இருக்கும். கூடுதலாக, உள்ளமைக்கப்பட்ட பொருள்கள் அல்லது வரிசைகளுடன் பணிபுரியும் போது, ​​கலவையைப் பயன்படுத்துகிறது try...catch அறிக்கைகள் மற்றும் சுழல்நிலை செயல்பாடுகள், நிரல் ஓட்டத்தை சீர்குலைக்கும் பிழைகள் இல்லாமல் தரவு கட்டமைப்பிற்குள் முக்கிய இருப்பை பாதுகாப்பாக சரிபார்க்க உதவும்.

ஜாவாஸ்கிரிப்டில் முக்கிய இருப்பு பற்றிய பொதுவான கேள்விகள் மற்றும் பதில்கள்

  1. உள்ளமைக்கப்பட்ட பொருளில் ஒரு விசை இருக்கிறதா என்பதை எவ்வாறு சரிபார்க்கலாம்?
  2. உள்ளமைக்கப்பட்ட பொருளைக் கடக்க நீங்கள் ஒரு சுழல்நிலை செயல்பாட்டைப் பயன்படுத்தலாம் மற்றும் விசையைப் பயன்படுத்தி ஒவ்வொரு நிலையையும் சரிபார்க்கலாம் hasOwnProperty() அல்லது தி in operator.
  3. நான் பயன்படுத்தலாமா in operator அணிகளுடன்?
  4. ஆம், ஆனால் இது வரிசை குறியீடுகளின் இருப்பை சரிபார்க்கிறது, மதிப்புகள் அல்ல. மதிப்புகளைச் சரிபார்க்க, பயன்படுத்தவும் Array.prototype.includes().
  5. என்ன வித்தியாசம் hasOwnProperty() மற்றும் Object.prototype.hasOwnProperty()?
  6. அவர்கள் எல்லோரும் ஒன்று தான்; Object.prototype.hasOwnProperty() என்பது முறை வரையறை, மற்றும் பொருள்கள் இந்த முறையைப் பெறுகின்றன.
  7. பயன்படுத்துவது பாதுகாப்பானதா undefined இல்லாத விசைகளை சரிபார்க்கவா?
  8. ஆம், ஒரு பொருளில் இல்லாத விசையை அணுகுவது திரும்பும் undefined மற்றும் பிழையை எறியாது, இருப்பைச் சரிபார்ப்பதற்காக இது பாதுகாப்பானது.
  9. ஒரு பொருளில் பல விசைகளை நான் எவ்வாறு சரிபார்க்கலாம்?
  10. பயன்படுத்தவும் Object.keys() விசைகளின் வரிசையைப் பெற, ஒவ்வொரு விசையின் இருப்பையும் சரிபார்க்கவும் Array.prototype.every() அல்லது Array.prototype.some().
  11. என்ன செய்கிறது Reflect.has() மீது சலுகை in operator?
  12. Reflect.has() பிரதிபலிப்பு API இன் ஒரு பகுதியாகும் மற்றும் பிற பிரதிபலிப்பு முறைகளுடன் சொத்து சோதனைகளுக்கு ஒரு நிலையான முறையை வழங்குகிறது.
  13. ஆழமாக உள்ளமைக்கப்பட்ட பொருட்களில் முக்கிய இருப்பு சோதனைகளை நான் எவ்வாறு கையாள்வது?
  14. கலவையைப் பயன்படுத்தவும் try...catch அறிக்கைகள் மற்றும் சுழல்நிலை செயல்பாடுகள் பாதுகாப்பாக செல்லவும் மற்றும் உள்ளமை கட்டமைப்புகளில் உள்ள விசைகளை சரிபார்க்கவும்.
  15. நான் பயன்படுத்தி கொள்ளலாமா Object.keys() வரிசைகளுடன்?
  16. ஆம், Object.keys() பொருளின் சொந்த எண்ணிடக்கூடிய சொத்துப் பெயர்களின் வரிசையை வழங்குகிறது, இதில் வரிசை குறியீடுகளும் அடங்கும்.

ஜாவாஸ்கிரிப்டில் முக்கிய இருப்பு நுட்பங்கள்

ஜாவாஸ்கிரிப்ட் பொருள்கள் மற்றும் வரிசைகளில் முக்கிய இருப்பைச் சரிபார்ப்பதற்கான அடிப்படை முறைகளுக்கு அப்பால், டெவலப்பர்கள் மேம்பட்ட நுட்பங்கள் பயனுள்ளதாக இருக்கும் மிகவும் சிக்கலான காட்சிகளை அடிக்கடி சந்திக்கின்றனர். அத்தகைய ஒரு நுட்பம் பயன்படுத்துவதை உள்ளடக்கியது Object.keys() பொருளின் சொந்த சொத்துப் பெயர்களின் வரிசையை உருவாக்க. ஒரு குறிப்பிட்ட விசை இருப்பதைச் சரிபார்க்க இந்த வரிசையைத் தேடலாம். ஒரு பொருளில் உள்ள விசைகளின் பட்டியலை நீங்கள் கையாள அல்லது பகுப்பாய்வு செய்ய வேண்டியிருக்கும் போது இந்த முறை மிகவும் பயனுள்ளதாக இருக்கும்.

மற்றொரு அணுகுமுறை பயன்படுத்த வேண்டும் Reflect.has(), இது போலவே செயல்படுகிறது in operator ஆனால் புதிய பிரதிபலிப்பு API இன் ஒரு பகுதியாகும், இது பொருட்களைக் கையாள்வதற்கான நவீன மற்றும் விரிவான கருவித்தொகுப்பை வழங்குகிறது. Reflect.has() என்பது பிற பிரதிபலிப்பு முறைகளுடன் நிலையான நடத்தையை நீங்கள் விரும்பும் சூழல்களில் குறிப்பாக பயனுள்ளதாக இருக்கும். கூடுதலாக, உள்ளமைக்கப்பட்ட பொருள்கள் அல்லது வரிசைகளுடன் பணிபுரியும் போது, ​​கலவையைப் பயன்படுத்துகிறது try...catch அறிக்கைகள் மற்றும் சுழல்நிலை செயல்பாடுகள், நிரல் ஓட்டத்தை சீர்குலைக்கும் பிழைகள் இல்லாமல் தரவு கட்டமைப்பிற்குள் முக்கிய இருப்பை பாதுகாப்பாக சரிபார்க்க உதவும்.

ஜாவாஸ்கிரிப்டில் முக்கிய இருப்பு சரிபார்ப்பை மூடுதல்

ஜாவாஸ்கிரிப்ட் பொருள்கள் மற்றும் வரிசைகளில் உள்ள முக்கிய இருப்பை திறம்பட சரிபார்ப்பது வலுவான மற்றும் பிழை இல்லாத குறியீட்டிற்கு முக்கியமானது. போன்ற நுட்பங்களைப் பயன்படுத்துதல் in operator, hasOwnProperty(), மற்றும் Reflect.has() உங்கள் குறியீடு பல்வேறு காட்சிகளை சீராக கையாளுவதை உறுதி செய்கிறது. போன்ற மேம்பட்ட முறைகள் Object.keys() மற்றும் சுழல்நிலை செயல்பாடுகள் சிக்கலான தரவு கட்டமைப்புகளை நிர்வகிப்பதற்கான உங்கள் திறனை மேலும் மேம்படுத்துகிறது, உங்கள் ஜாவாஸ்கிரிப்ட் நிரலாக்கத்தை மிகவும் திறமையாகவும் நம்பகமானதாகவும் ஆக்குகிறது.