JSON密钥名称中哪些字符有效/无效?

2020/11/08 01:22 · javascript ·  · 0评论

关键字名称,JavaScript对象或JSON字符串中是否有任何禁止的字符?还是需要转义的字符?

更具体地说,我想在键名中使用“ $”,“-”和空格。

否。任何有效的字符串都是有效的密钥。"只要您逃脱它,它甚至可以拥有

{"The \"meaning\" of life":42}

将此类值加载到某些语言中(尝试将键与对象字段名称相关联)可能会遇到困难。我不知道有任何这样的情况。

后面的字符必须在JSON数据中转义以避免任何问题

'单引号

报价

\反斜杠

所有控制字符,例如\ n \ t

JSON解析器可以帮助您处理JSON。

编辑:
这是替换的JSON解析器,因为OP的链接已死

值得一提的是,虽然使用数字开头的键是有效的,但可能会导致一些意外的问题。

例:

var testObject = {
    "1tile": "test value"
};
console.log(testObject.1tile); // fails, invalid syntax
console.log(testObject["1tile"]; // workaround

必须避免使用Unicode代码点U + D800到U + DFFF:它们在Unicode无效,因为它们是为UTF-16代理对保留的。一些JSON编码器/解码器会将它们替换为U + FFFD。例如,查看Go语言及其JSON库如何处理它们

因此,避免单独使用“ \ uD800”到“ \ uDFFF”(而不是在代理对中)。

本文地址:http://javascript.askforanswer.com/jsonmiyaomingchengzhongnaxiezifuyouxiao-wuxiao.html
文章标签: ,   ,   ,  
版权声明:本文为原创文章,版权归 javascript 所有,欢迎分享本文,转载请保留出处!

文件下载

老薛主机终身7折优惠码boke112

上一篇:
下一篇:

评论已关闭!