使用 JSON.parse 将字符串(变量)转换为对象,错误意外标记
Convert a string (variable ) to object with JSON.parse , error unexpected token
我在将字符串变量解析回对象时遇到问题。我已经查看了有关此主题的所有其他问题,但没有一个可以解决我的问题。
if(subMatch.match(/'{.*'}/)){ /// new Object of some sort
var objStr=subMatch.match(/'{.*'}/)[0];
//objStr= JSON.stringify(objStr); // I tried this , no difference
//objStr='"'+objStr+'"'; // Tried this way: unexpected token t
//objStr="'"+objStr+"'"; // Tried this way: unexpected token '
objStr=JSON.parse("'"+objStr+"'"); // puts out unexpected token '
这是我正在尝试的字符串:
{"type": "lawnmowing","hours": 10,"rate": 10.5,"permanent": false}
根据JSONLint的说法,它是有效的。 加上额外的引号,它看起来像:
'{"type": "lawnmowing","hours": 10,"rate": 10.5,"permanent": false}'
我看着这个问题,
杰森。Parse,'未捕获语法错误:意外的标记 o
但是它们的变量以对象开始。我的 objStr 有字符串类型,我检查过。我在 objStr 周围添加文字单引号。因为 objStr 已经是一个字符串,这应该不是问题吧?我也完全尝试了变量周围没有额外的引号
如何正确 JSON.parse 字符串变量。我可以让它与 eval 一起工作,但我宁愿不使用它,因为它是我必须放入对象的用户输入。
很抱歉再次打扰您有关此主题的问题,但我尚未在其他问题中找到解决方案。
帮助将不胜感激!谢谢珍妮塔
正如
CBroe所说,JSON.parse()
可以自行解析JSON,无论你在这里尝试做什么,都会阻止它这样做。
它不需要你的帮助。只是让它完成它的工作并摆脱所有混乱:
var obj = JSON.parse(objStr);
相关文章:
- object响应时出现对象错误javascript
- Google嵌入API cb=gap对象错误
- JavaScript JSON对象对象错误
- JSON字符串到JavaScript对象错误
- Symfony2 JSON 对象 - 错误未捕获类型错误:无法使用“in”运算符搜索“636”
- 使用 Javascript 读取 JSON 对象(错误)
- 新的 $.fn.MyObject() 在 IE8 中触发“预期对象”错误
- 如何删除未定义的对象错误并根据位置重定向用户
- “'$' 为空或不是对象 ” 错误在 ajax 响应中
- 如何使用 AJAX 发布多个 JQuery 值并避免对象错误
- 我在IE移动版中使用计时器时收到[对象错误]
- IE8 中出现“需要对象”错误
- 存储为空或不是 dojo 中的对象错误
- IE 中需要 JavaScript 对象错误
- GSON 不是对象错误
- 如何使用TinyMCE和Internet Explorer 8解决“需要对象”错误消息
- 工作灯适配器 它不是一个函数,它是“对象”.错误
- IE8 - “为空或不是对象”错误
- 将小时数添加到 JavaScript 日期对象错误
- AJAX 请求导致“未定义不是对象”错误