ஒவ்வொரு டெவலப்பரும் செய்யும் 25 JSON தவறுகள்
JSON இணையத் தொடர்புகளின் முதுகெலும்பாகும். இது இலகுவானது மற்றும் எளிதில் வாசிக்கக்கூடியது. இருப்பினும், அதன் விதிகள் மிகவும் கடுமையானவை. சிறிய பிழைகள் கூட உங்கள் குறியீட்டை (code) செயலிழக்கச் செய்யும்.
சிறந்த தரவு அமைப்புகளை (data structures) உருவாக்க இந்த பொதுவான தவறுகளைத் தவிர்க்கவும்.
தொடரியல் பிழைகள் (Syntax Errors)
- இரட்டை மேற்கோள்களை (double quotes) மட்டுமே பயன்படுத்தவும். JavaScript-இல் ஒற்றை மேற்கோள்கள் (single quotes) வேலை செய்யும், ஆனால் JSON-இல் அவை தோல்வியடையும்.
- இறுதியில் வரும் கமாக்களை (trailing commas) நீக்கவும். கடைசி உருப்படியின் பின் ஒரு கமா இருந்தால் அது பிழையை ஏற்படுத்தும்.
- விடுபட்ட கமாக்களைச் சேர்க்கவும். ஒவ்வொரு key-value ஜோடிக்கும் இடையில் ஒரு கமா இருக்க வேண்டும்.
- அனைத்து keys-களையும் மேற்கோள் குறிகளுக்குள் வைக்கவும். ஒவ்வொரு key-யையும் இரட்டை மேற்கோள்களுக்குள் வைத்திருக்க வேண்டும்.
- அடைப்புக்குறிகளைச் சரியாகப் பயன்படுத்தவும். சதுர அடைப்புக்குறிகள் (square brackets) இருக்க வேண்டிய இடத்தில் நெளிவு அடைப்புக்குறிகளை (curly braces) பயன்படுத்த வேண்டாம்.
தரவு வகை பிழைகள் (Data Type Mistakes)
- undefined மதிப்புகளைக் கையாளவும். JSON, undefined-ஐ ஆதரிக்காது. அதற்குப் பதிலாக null என்பதைப் பயன்படுத்தவும்.
- NaN மற்றும் Infinity ஆகியவற்றைத் தவிர்க்கவும். Serialization செய்யும் போது இந்த மதிப்புகள் null ஆக மாறிவிடும்.
- Date வடிவங்களை நினைவில் கொள்ளவும். JSON தேதிகளை (dates) சரங்களாக (strings) treats செய்கிறது. அவற்றை மீண்டும் Date objects ஆக மாற்ற (parse) வேண்டும்.
- base-10 எண்களைப் பயன்படுத்தவும். hex அல்லது octal வடிவங்களைப் பயன்படுத்த வேண்டாம்.
- functions-களைச் சேமிக்க வேண்டாம். JSON நிலையான தரவுகளுக்கு (static data) மட்டுமே உரியது.
- கமெண்ட்களைத் (comments) தவிர்க்கவும். JSON-இல் // அல்லது /* */ கமெண்ட்களைப் பயன்படுத்த முடியாது.
- இரட்டை மேற்கோள்களை escape செய்யவும். ஒரு string-க்குள் மேற்கோள்களைச் சேர்க்க backslash பயன்படுத்தவும்.
- புதிய வரிகளுக்கு (newlines) \n பயன்படுத்தவும். ஒரு string மதிப்புக்குள் நீங்கள் enter அழுத்த முடியாது.
- backslashes-களை escape செய்யவும். பாதைகள் (paths) அல்லது regex முறைகளுக்கு \ பயன்படுத்தவும்.
சூழல் மற்றும் தர்க்கப் பிழைகள் (Environment and Logic Errors)
- உங்கள் உள்ளீட்டைச் (input) சரிபார்க்கவும். JSON.parse()-க்கு ஒரு object-ஐ அனுப்ப வேண்டாம்.
- எழுத்து வடிவங்களைக் (casing) கவனிக்கவும். "userId" மற்றும் "userid" ஆகியவை வெவ்வேறு keys ஆகும்.
- வரிசையைச் சார்ந்திருக்க வேண்டாம். JSON, keys-களின் வரிசையை உறுதி செய்வதில்லை.
- ஒருபோதும் eval() பயன்படுத்த வேண்டாம். பாதுகாப்பு அபாயங்களைத் தவிர்க்க JSON.parse() பயன்படுத்தவும்.
- பெரிய எண்களைப் பாதுகாக்கவும். துல்லியத்தன்மை இழப்பைத் தவிர்க்க 64-bit ID-களை strings ஆக அனுப்பவும்.
- try...catch பிளாக்குகளைப் பயன்படுத்தவும். பிழைகளைக் கையாளவில்லை என்றால், தவறான JSON உங்கள் செயலியை (app) செயலிழக்கச் செய்யும்.
- circular references-களைச் சரிசெய்யவும். தன்னைத்தானே சுட்டிக்காட்டும் ஒரு object-ஐ stringify செய்ய முடியாது.
- வித்தியாசத்தைப் புரிந்துகொள்ளவும். ஒரு சாதாரண JavaScript object-ஐ விட JSON மிகவும் கட்டுப்பாடுகளைக் கொண்டது.
- காலியான சரங்களைத் (empty strings) தவிர்க்கவும். "" என்பதற்குப் பதிலாக {} அல்லது [] பயன்படுத்தவும்.
பாதுகாப்பாக இருப்பது எப்படி:
- உங்கள் தொடரியலைச் சரிபார்க்க ஒரு validator-ஐப் பயன்படுத்தவும்.
- கோப்புகளைத் தானாக வடிவமைக்க (auto-format) உங்கள் எடிட்டரில் Prettier-ஐப் பயன்படுத்தவும்.
- parsing தர்க்கத்தை எப்போதும் try...catch பிளாக்கிற்குள் வைக்கவும்.
மூலம்: https://dev.to/jsdevspace/25-json-mistakes-every-developer-makes-36e6
