【问题标题】:Convert string to js map将字符串转换为 js 映射
【发布时间】:2011-07-20 19:15:06
【问题描述】:

我正在做一个 ajax 帖子并从服务器获取此日期(如果我需要进行更改,我可以控制服务器):

"[{4e2384d1eca4a61030d8746c:'27.7766405735821,-81.9141438476562,stuff,'},{4e237b32eca4a6103061abf7:'27.94904038727,-82.6213887207031,test again,'}]"

我正在尝试将其转换为地图,即

{4e2384d1eca4a61030d8746c:'27.7766405735821,-81.9141438476562,stuff,'}
{4e237b32eca4a6103061abf7:'27.94904038727,-82.6213887207031,test again,'}

在我收到数据的 Firebug 中,我正在监视

$.parseJSON(txt)  //where txt is the data received

但我得到一个错误

Invalid JSON:

[{4e2384d1eca4a61030d8746c:'27.7766405735821,-81.9141438476562,东西,'},{4e237b32eca4a6103061abf7:'27.94904038727,-82.62138872070 再次,'}]

TIA

【问题讨论】:

  • 显然您没有创建正确的 JSON...问题是什么?

标签: javascript json parsing map


【解决方案1】:

如果您无法通过在键和字符串值周围使用双引号使其成为有效的 JSON:

'[{"4e2384d1eca4a61030d8746c":"27.7766405735821,-81.9141438476562,stuff,"},{"4e237b32eca4a6103061abf7":"27.94904038727,-82.6213887207031,test again,"}]'

...那么您可能会被eval() 卡住,但您应该在您绝对确定数据安全的情况下使用它。

var result;
eval( 'result=' + txt );

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-03-10
    • 2021-12-25
    • 2016-10-20
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多