做线上配置时JSON.parse()踩的坑

90 阅读1分钟

JSON.parse()踩的坑: 在做vue3 DSL formItme中的el-toolTip根据权限系统做线上配置。 FormItem中的toolTip的content是根据权限系统配置的扩展字段来显示的。 权限系统中可以加相应页面下的label中的扩展字段。

image.png

let str = "{'label':1}"
JSON.parse(str,'str')

错误提示:Expected property name or '}' in JSON at position 1 image.png

let str = '{"label":1}'
JSON.parse(str,'str')

正常

let str = '{\"label\":1}'
JSON.parse(str,'str')

正常

总结:

JSON中对象以及数组的属性名必须是双引号,属性值如果是字符串也必须是双引号 不支持undefined