¶ÔÓÚ½ÓÊÕ¿Í»§¶ËÊý¾Ý£¬½øÐÐ json ½âÂ룬Óöµ½µÄÎÊÌâ¿ÉÄܱȽ϶࣬ÌرðÊÇͬʱ½ÓÊÕ¶àÖÖÓïÑÔµÄÊý¾Ý£¬±ÈÈç PHP¡¢Java µÈ¡£±ÈÈç b := []byte(`{¡°Name¡±:¡±polaris¡±,¡±Age¡±:30,¡±Money¡±:20.3}`)£¬PHP ´«µÝ¹ýÀ´µÄ¿ÉÄÜÊÇ£ºb := []byte(`{¡°Name¡±:¡±polaris¡±,¡±Age¡±:¡±30¡å,¡±Money¡±:¡±20.3¡å}`)£¬ÔÚʹÓà struct ½ÓÊÕÊý¾Ýʱ£¬¶ÔÓÚ Age£¬Èç¹ûÊÇ int£¬ÎÒÃÇ¿ÉÒÔÖ±½Ó¶¨ÒåΪ int ÀàÐÍ£¬µ«Èç¹ûÊÇstring£¬¿ÉÒÔͨ¹ý string tag options ½ÓÊÕ£»µ«Èç¹ûAgeÓÐʱÊÇ int, ÓÐʱÊÇ string£¬¾Í»á³öÎÊÌâ¡£×îÀíÏëµÄÇé¿ö£¬µ±È»ÊDz»Ï£Íû³öÏÖÕâÖÖÇé¿ö£¬µ«ÓÐÒ»µã£¬³ÌÐòÒª±£Ö¤³öÏÖÕâÖÖÇé¿öʱ£¬²»ÄÜ panic¡£
ÔÚʵ¼ÊÓ¦ÓÃÖУ¬ÎÒ¾ÍÓöµ½ÁËÉÏÃæµÄÎÊÌ⣬ÓÚÊÇ£¬×Ô¼ºÐ´ÁËÒ»¸ö json ½âÎö£¬ÄÜÖ§³Ö×Ô¶¯ÀàÐÍת»»¡£´úÂ뿪ԴÔÚ github£º https://github.com/polaris1119/jsonutils
Èý¡¢ÐÔÄÜÎÊÌâºÜÃ÷ÏÔ£¬json µÄ±à½âÂ룬ʹÓÃÁË Go µÄ·´É书ÄÜ£¬ËùÒÔ£¬ÐÔÄÜ×ÔÈ»²»ÊÇÌ«ºÃ£¬ÕýÒòΪÈç´Ë£¬ÓÐÁË ffjson¡¢easyjson Ö®ÀàµÄ¿ªÔ´¿â£¨ÔÚ github ÉÏ£©£¬ËüÃǵÄÔÀíÊÇͨ¹ý go generate ¸ù¾Ý struct Éú³ÉÏàÓ¦µÄ´úÂ룬±ÜÃâ·´Éä¡£Èç¹ûÄã¶ÔÐÔÄÜÒªÇó±È½Ï¸ß£¬µ«ÓÖ²»ÏëʹÓÃmsgpack/pb/thrift Ö®ÀàµÄ£¬ÄÇô¿ÉÒÔ¿¼ÂÇʹÓà ffjson/easyjson À´ÓÅ»¯ÐÔÄÜ¡£
¡¡