இந்த கட்டுரை குறிப்பிடப்பட்ட பிழை மற்றும் அதன் சாத்தியமான தீர்வுகளை வரையறுக்கும்.
“TypeError: object.forEach is not a function in JavaScript” எப்படி நிகழ்கிறது?
வரிசை, வரைபடம் அல்லது தொகுப்பு இல்லாத மதிப்பு பயன்படுத்தப்படும்போது, ' ஒவ்வொரு() 'போன்ற முறை' பொருள் 'மற்றும் பல,' TypeError: object.forEach என்பது JavaScript இல் ஒரு செயல்பாடு அல்ல ” ஏற்படுகிறது. கூறப்பட்ட காரணத்தை நடைமுறையில் சோதிப்போம்.
உதாரணமாக
கொடுக்கப்பட்ட எடுத்துக்காட்டில், முதலில், முக்கிய மதிப்பு ஜோடியில் அதன் பண்புகளுடன் ஒரு பொருளை உருவாக்குவோம்:
நிலையான பொருள் = {
பெயர் : 'ஸ்டீபன்' ,
ரோல்னோ : பதினொரு ,
பொருள் : 'வணிகம்'
} ;
பின்னர், forEach() முறையைப் பயன்படுத்தி கன்சோலில் அதன் பண்புகள்/உள்ளீடுகளை அச்சிடவும்:
பொருள். ஒவ்வொரு ( ஓ => {
பணியகம். பதிவு ( ஓ ) ;
} ) ;
நீங்கள் வெளியீட்டில் பார்க்க முடியும், ஏனெனில் forEach முறை பொருள்களுக்குப் பொருந்தாது என்பதால் ஒரு பிழை ஏற்பட்டது:
குறிப்பிட்ட பிழையை எவ்வாறு சரிசெய்வது?
மேலே விவாதிக்கப்பட்ட பிழையைத் தீர்க்க, பொருளின் முறைகளைப் பயன்படுத்தவும் Object.keys() 'வரிசையில் விசைகளைப் பெற,' Object.values() 'பொருளின் மதிப்புகளைப் பெறுவதற்கு, அல்லது' Object.entries() ” ஒரு பொருளின் அனைத்து உள்ளீடுகளையும் மீட்டெடுப்பதற்காக. மேலும், ' Array.from() ” முறை குறிப்பிட்ட பொருளை பொருள்களின் வரிசையாக மாற்றுகிறது.
இந்த சிக்கலை தீர்க்க ஒரு உதாரணத்தை முயற்சிப்போம்.
எடுத்துக்காட்டு 1: Object.entries() முறையைப் பயன்படுத்தி குறிப்பிடப்பட்ட பிழையை சரிசெய்யவும்
இந்த எடுத்துக்காட்டில், '' ஐப் பயன்படுத்தி ஒரு பொருளின் உள்ளீடுகளைப் பெறுவோம். Object.entries() 'முறையுடன்' ஒவ்வொரு() 'முக்கிய மதிப்பு ஜோடிகளில் பொருளின் உள்ளீடுகளின் வரிசையை வழங்கும் முறை:
பொருள் . உள்ளீடுகள் ( பொருள் ) . ஒவ்வொரு ( உள்ளே => {பணியகம். பதிவு ( உள்ளே ) ;
} ) ;
இது பிழையைக் கொடுக்காது, ஏனெனில் Object.entries() முறையானது அணிவரிசையில் உள்ள மதிப்புகளை மாற்றுகிறது மற்றும் forEach() முறையானது ஒவ்வொரு உறுப்புக்கும் கொடுக்கப்பட்ட செயல்பாட்டை இயக்க பயன்படுகிறது.
ForEach() முறையானது Object.entries() முறையைப் பயன்படுத்தி பொருளில் வெற்றிகரமாக இயங்குகிறது என்பதை வெளியீடு குறிக்கிறது:
குறிப்பு: ஒவ்வொரு முறையும் Object.keys() மற்றும் Object.values() முறையைப் பயன்படுத்தி ஒரு பொருளின் விசைகள் மற்றும் மதிப்புகளைப் பெறுவதற்கும் பயன்படுத்தப்படுகிறது.
இப்போது, நீங்கள் ஒரு பொருளின் விசைகள், மதிப்புகள் அல்லது உள்ளீடுகளைப் பெற விரும்பவில்லை என்றால், நீங்கள் என்ன செய்வீர்கள்? கொடுக்கப்பட்ட உதாரணத்தைப் பாருங்கள்!
எடுத்துக்காட்டு 2: Array.from() முறையைப் பயன்படுத்தி குறிப்பிடப்பட்ட பிழையை சரிசெய்யவும்
இந்தப் பிழையைச் சரிசெய்ய, பொருளைப் பொருள்களின் வரிசையாக மாற்றி, அதன் மீது forEach() முறையைப் பயன்படுத்தவும். Array.from() ”முறை. இது ஒரு பொருளின் அனைத்து பண்புகளையும் பிழையின்றி அச்சிடும்.
முதலில் பொருளைப் பொருள்களின் வரிசையாக மாற்றுவோம்:
நிலையான பொருள் = [ {பெயர் : 'ஸ்டீபன்' ,
ரோல்னோ : பதினொரு ,
பொருள் : 'வணிகம்'
} ]
forEach() முறையை அழைக்கவும்:
வரிசை . இருந்து ( பொருள் ) . ஒவ்வொரு ( மணிக்கு => {பணியகம். பதிவு ( மணிக்கு ) ;
} ) ;
வெளியீடு
குறிப்பிட்ட பிழையை சரிசெய்வதற்கான அனைத்து சிறந்த தீர்வுகளையும் நாங்கள் தொகுத்துள்ளோம்.
முடிவுரை
நீங்கள் பயன்படுத்த முயற்சிக்கும்போது குறிப்பிடப்பட்ட பிழை ஏற்படுகிறது ' ஒவ்வொரு() 'அரே, செட் அல்லது வரைபடம் இல்லாத மதிப்பின் முறை. இந்த பிழையை சரிசெய்ய, '' ஐப் பயன்படுத்தவும் Array.from() ”முறையானது பொருளை அணிவரிசையாக மாற்றவும், பின்னர் அதில் forEach() முறையைப் பயன்படுத்தவும். குறிப்பிடப்பட்ட பிழையின் நிகழ்வு மற்றும் தீர்வு பற்றி இந்த கட்டுரை விவரிக்கிறது.