将string解析为json的几种方式小结,需要的朋友可以参考下。
1.比较古老的方法:
(责任编辑:admin)function strToJson(str){ var json = eval('(' + str + ')'); return json; } 2.比较常用的方法: function strToJson(str){ return (new Function("return " + str))(); } 3.IE67不支持的json对象方法: function strToJson(str){ return JSON.parse(str); } 4.jQuery提供的方法: parseJSON: function( data ) { if ( typeof data !== "string" || !data ) { return null; } data = jQuery.trim( data ); if ( /^[\],:{}\s]*$/.test(data.replace(/\\(?:["\\\/bfnrt]|u[0-9a-fA-F]{4})/g, "@") .replace(/"[^"\\\n\r]*"|true|false|null|-?\d+(?:\.\d*)?(?:[eE][+\-]?\d+)?/g, "]") .replace(/(?:^|:|,)(?:\s*\[)+/g, "")) ) { return window.JSON && window.JSON.parse ? window.JSON.parse( data ) : (new Function("return " + data))(); } else { jQuery.error( "Invalid JSON: " + data ); } }, |