JavaScript-SCRIPT1023缺少十六进制数字 (Expected hexadecimal digit)
来源:互联网 发布:中国政治知乎 编辑:程序博客网 时间:2024/06/06 04:36
项目中前端使用了 easyui,其中国际化文件是用纯中文写的(如下图右侧),导致另一个外系统集成我们项目的页面时,相关的文字就变成了乱码
为了处理这个,先尝试把国际化文件中的内容转成 unicode 编码,但改完后一刷新,发现报错了:
SCRIPT1023: 缺少十六进制数字
(Expected hexadecimal digit)
具体查了一下,是指这一行内容:
URL 这三个字符转成 unicode 编码后,在 IE 下报错,用 Chrome 报的是另一个错:
Uncaught SyntaxError: Unexpected token ILLEGAL
尝试了另几种方法,把 URL 三个字符转成其他的,如:
\\u55\\u52\\u4c
URL
虽然不会报错,但还是不能正常显示 URL,最后尝试不对 URL 三个字符进行转码:
\u8bf7\u8f93\u5165\u6709\u6548\u7684URL\u5730\u5740
测试通过
================昏割线================
继续研究:
搜了下微软的官方文档,其中是这么说的:
字符串值是一个由零或多个 Unicode 字符(字母、数字和其他字符)组成的序列。 字符串括在成对的单引号或双引号内。 括在单引号内的字符串可包含双引号。 括在双号内的字符串中可包含单引号。
字符串中的每个字符均可由一个转义序列表示。 转义序列以反斜杠 (\) 开头,它通知 JavaScript 解释器下一个字符是特殊字符。
可以使用 \uhhhh 转义序列指定 Unicode 字符,其中 hhhh 是四位十六进制数。 Unicode 转义序列可以表示任何 16 位字符。 有关其他信息,请参阅 Unicode 码位转义序列。
所以,反斜杠后,需要四位十六进制数,而 U 这个字符转成 unicode 编码后是 \u55,不符合官方所需,这就正如报错内容:缺少/预期十六进制数字
但英文如果想转 unicode 编码怎么办?换了一个在线转码工具后发现:
emmm...... 好吧,可能也就是因为之前用的那个转码工具有BUG吧,没有转成正规的十六进制,啊哈...哈...
- JavaScript-SCRIPT1023缺少十六进制数字 (Expected hexadecimal digit)
- JS1023: Expected hexadecimal digit
- javascript 错误“缺少十六进制数字”的处理
- JavaScript错误,缺少十六进制
- 上传文件时候报错: 缺少十六进制数字
- HDU 4054 Hexadecimal View 十六进制
- Hexadecimal View(十六进制+模拟)
- 十六进制数字
- ewebeditor在上传文件时出现javascript错误:缺少十六进制错误
- 网页报“缺少标识符 字符串或数字”(Expected identifier,string or number)错误的原因及解决办法
- 字符串内特殊字符在html_javascript_xml等内使用时的转换 ,"缺少十六进制数字"错误的处理
- Leetcode405. Convert a Number to Hexadecimal十进制转十六进制
- leetcode 405. Convert a Number to Hexadecimal 十进制转化十六进制
- leetcode 405. Convert a Number to Hexadecimal(十进制转十六进制>>>)
- 数数字(Digit Counting)
- 寻找缺少的数字
- CString转十六进制数字
- C--显示十六进制数字
- git命令的使用
- 剑指offer_数组---最小的K个数
- 二级C++语言程序设计考试大纲(2013年版)
- jsday03补充(函数匿名和动态)
- ===(绝对等于)
- JavaScript-SCRIPT1023缺少十六进制数字 (Expected hexadecimal digit)
- macOS上的readelf和objdump的替换
- 一步步地分析排序——堆排序与优先队列
- [js高手之路]一步步图解javascript的原型(prototype)对象,原型链
- 实现一个简单的目录浏览器
- 决策树总结
- 【七日牧函】属灵争战的敏感
- 用Vue-cli生成vue+webpack的项目模板怎么设置为vue1.0版本?
- SpringMVC