一般情況下直接用eval函數即可,但是今天遇到了一個問題,報錯如下:Uncaught SyntaxError: Invalid shorthand property initializer
我被這個問題困擾了半天,最後經大神指點成功解決,特此記錄
我的字符串爲
str = [{O=40.767268, P=114.74015500000002, lng=114.740155, lat=40.767268}, [114.740788, 40.767345], [114.741132, 40.76726]]
eval(str.replace(/\=/g,":"));
因爲這個字符串要變爲數組後它的第一個元素是{O=40.767268, P=114.74015500000002, lng=114.740155, lat=40.767268},由於被{}包裹eval函數會認爲他是json字符串,但是他是key=value格式的故不是json字符串,所以需要先將其轉換爲json字符串。