દરેક ડેવલપર દ્વારા કરવામાં આવતી 25 JSON ભૂલો

JSON વેબ કોમ્યુનિકેશનનો મુખ્ય આધાર છે. તે હળવું (lightweight) અને વાંચવામાં સરળ છે. જોકે, તેના નિયમો કડક છે. નાની ભૂલો તમારા કોડને તોડી શકે છે.

વધુ સારા ડેટા સ્ટ્રક્ચર્સ લખવા માટે આ સામાન્ય ભૂલો ટાળો.

સિન્ટેક્સ ભૂલો (Syntax Errors)

  • ફક્ત ડબલ ક્વોટ્સનો જ ઉપયોગ કરો. JavaScript માં સિંગલ ક્વોટ્સ કામ કરે છે પરંતુ JSON માં તે નિષ્ફળ જાય છે.
  • છેલ્લે આવતા કોમા (trailing commas) દૂર કરો. છેલ્લા આઇટમ પછી કોમા હોવાથી ક્રેસ (crash) થઈ શકે છે.
  • ખૂટતા કોમા ઉમેરો. દરેક key-value જોડી વચ્ચે કોમા હોવો જરૂરી છે.
  • તમામ keys ને ક્વોટ કરો. દરેક key ની આસપાસ ડબલ ક્વોટ્સ હોવા જોઈએ.
  • તમારા બ્રેકેટ્સ મેચ કરો. જ્યાં સ્ક્વેર બ્રેકેટ્સ (square brackets) હોવા જોઈએ ત્યાં કરલી બ્રેસીસ (curly braces) નો ઉપયોગ કરશો નહીં.

ડેટા ટાઇપની ભૂલો (Data Type Mistakes)

  • undefined વેલ્યુઝને હેન્ડલ કરો. JSON undefined ને સપોર્ટ કરતું નથી. તેના બદલે null નો ઉપયોગ કરો.
  • NaN અને Infinity ટાળો. સિરીયલાઈઝેશન (serialization) દરમિયાન આ વેલ્યુઝ null માં બદલાઈ જાય છે.
  • Date ફોર્મેટ યાદ રાખો. JSON તારીખને સ્ટ્રિંગ તરીકે ગણે છે. તમારે તેને ફરીથી Date ઓબ્જેક્ટ્સમાં પાર્સ (parse) કરવું પડશે.
  • બેઝ-10 નંબર્સનો ઉપયોગ કરો. હેક્સ (hex) અથવા ઓક્ટલ (octal) ફોર્મેટનો ઉપયોગ કરશો નહીં.
  • ફંક્શન્સ સ્ટોર કરશો નહીં. JSON ફક્ત સ્ટેટિક ડેટા માટે છે.
  • કોમેન્ટ્સ ટાળો. JSON માં // અથવા /* */ કોમેન્ટ્સની મંજૂરી નથી.
  • ડબલ ક્વોટ્સને એસ્કેપ (escape) કરો. સ્ટ્રિંગની અંદર ક્વોટ્સનો સમાવેશ કરવા માટે બેકસ્લેશનો ઉપયોગ કરો.
  • નવી લાઇન માટે \n નો ઉપયોગ કરો. તમે સ્ટ્રિંગ વેલ્યુની અંદર એન્ટર (enter) દબાવી શકતા નથી.
  • બેકસ્લેશને એસ્કેપ કરો. પાથ અથવા regex પેટર્ન માટે \ નો ઉપયોગ કરો.

એન્વાયરમેન્ટ અને લોજિકલ ભૂલો (Environment and Logic Errors)

  • તમારું ઇનપુટ તપાસો. JSON.parse() માં ઓબ્જેક્ટ પાસ કરશો નહીં.
  • કેસિંગ (casing) પર ધ્યાન આપો. "userId" અને "userid" અલગ-અલગ keys છે.
  • ક્રમ (order) પર આધાર રાખશો નહીં. JSON કી (keys) ના ક્રમની ખાતરી આપતું નથી.
  • ક્યારેય eval() નો ઉપયોગ કરશો નહીં. સુરક્ષા જોખમો રોકવા માટે JSON.parse() નો ઉપયોગ કરો.
  • મોટા નંબર્સનું રક્ષણ કરો. ચોકસાઈ ગુમાવવાથી બચવા માટે 64-bit IDs ને સ્ટ્રિંગ તરીકે પાસ કરો.
  • try...catch બ્લોક્સનો ઉપયોગ કરો. જો તમે ભૂલોને કેચ (catch) નહીં કરો, તો અમાન્ય JSON તમારા એપને ક્રેસ કરી દેશે.
  • સર્ક્યુલર રેફરન્સ (circular references) સુધારો. તમે એવા ઓબ્જેક્ટને સ્ટ્રિંગિફાય (stringify) કરી શકતા નથી જે પોતાની તરફ જ પોઇન્ટ કરતો હોય.
  • તફાવત જાણો. JSON પ્રમાણભૂત JavaScript ઓબ્જેક્ટ કરતા વધુ પ્રતિબંધિત છે.
  • ખાલી સ્ટ્રિંગ ટાળો. "" ને બદલે {} અથવા [] નો ઉપયોગ કરો.

સુરક્ષિત કેવી રીતે રહેવું:

  • તમારા સિન્ટેક્સને તપાસવા માટે વેલિડેટર (validator) નો ઉપયોગ કરો.
  • ફાઇલોને ઓટો-ફોર્મેટ કરવા માટે તમારા એડિટરમાં Prettier નો ઉપયોગ કરો.
  • પાર્સિંગ લોજિકને હંમેશા try...catch બ્લોકમાં રાખો.

સ્ત્રોત: https://dev.to/jsdevspace/25-json-mistakes-every-developer-makes-36e6