zoukankan      html  css  js  c++  java
  • Unicode特殊字符的坑

    一、LESP

    先了解下JSON处理中特殊字符的正确处理方式。

    在 ECMAscript 5.1 ( https://www.ecma-international.org/ecma-262/5.1/#sec-15.12.2 ) 中有这样一句话:

    JSON uses a more limited set of white space characters than WhiteSpace and allows Unicode code points U+2028 and U+2029 to directly appear in JSONString literals without using an escape sequence.

    这意味着 JSON.stringify 和 JSON.parse 都不应当对空格、U+2028、U+2029这三个字符进行转义,例如对于空格:

    可以看到空格未进行转义,同样的道理,U+2028 也不会被转义:

    但对于 ' ' ,是需要转义的:

    Javascript的编码格式为UCS-2,JSON.parse()一个包含特殊字符的字符串会报错,将原字符串中的特殊字符特换掉就行(也可以替换成空)

    str = str.Replace(/u2028/g, "\u2028");

    参考链接:

    https://www.cnblogs.com/rrooyy/p/5349978.html

  • 相关阅读:
    隐藏 阴影 定位 js语法与导入
    js 相关知识
    选择器 常用样式 布局
    前端
    数据库 备份
    SQLAlchemy 创建 增 删 改 查
    引擎 索引 日志查询 权限管理
    pysql
    数据库的操作
    Conv1*1
  • 原文地址:https://www.cnblogs.com/dengquan/p/14329762.html
Copyright © 2011-2022 走看看