如何在javascript中解析javascript对象字符串
How to parse javascript object string in javascript?
我有一个对象的字符串表示,在模板字符串中,像这样
const obj = `
{
namespace: 'ignored',
state: {}
}
`
现在我想把它解析成一个对象,但是JSON.parse
抛出了一个错误。
JSON.parse(obj)
//=> Uncaught SyntaxError: Unexpected token n in JSON at position 13(…)
这是因为JSON.parse
期望这样的json字符串
const obj = `
{
"namespace": "ignored",
"state": {}
}
`
现在,我不能手动更改我的obj
对象,因为这是一个用户输入,可以更复杂的方式。那么,有什么方法来解析它吗?在使用JSON之前。用正则表达式,或者比json。parse更好的方法?
你可以做几件事。
- 使用正确的解析器。
- 使用
eval()
对于大多数应用程序,特别是如果有任何用户输入,最终将在其他用户的计算机上,eval()
是一个糟糕的主意。可能只对一次性脚本或类似脚本有用。
相关文章:
- Chrome开发工具(如何知道我在调用哪个javascript对象)
- 循环遍历以数组为值的Javascript对象
- 从ajax请求中获取javascript对象
- 如何从对象的原型方法访问JavaScript对象属性
- 将XML转换为普通的旧JavaScript对象
- 通过引用传递JavaScript对象
- javascript对象操作:根据指定条件选择属性
- Javascript对象类在单击时打开窗口进行颜色选择,并在更改时替换对象背景颜色
- 如何在异步函数中使用javascript对象
- 临时Javascript对象
- 如何在ASP中为用户控件添加Javascript对象网
- 使用数组向下搜索Javascript对象
- Rails将JavaScript对象存储到Model的有效方式
- JavaScript对象不是从原型链继承的
- 如何创建具有默认值的JavaScript对象字段?(AngularJS模型相关)
- SetInterval在javascript对象中表现怪异
- Javascript 对象和 this 关键字
- 如何在不知道关键字的情况下访问javascript对象值
- 在 JavaScript 对象中设置要使用的运算符的属性
- 如何搜索JavaScript对象并更改值