Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/363.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
使用UTF-16字符编码编写Javascript_Javascript_Web Applications_Character Encoding_Utf 16 - Fatal编程技术网

使用UTF-16字符编码编写Javascript

使用UTF-16字符编码编写Javascript,javascript,web-applications,character-encoding,utf-16,Javascript,Web Applications,Character Encoding,Utf 16,以下是我正在尝试的,但不确定如何让它工作,或者它是否可能- 我有一个HTML页面MyHTMLPage.htm,我想从这个HTML文件中src一个Javascript。这很简单。我计划在我的HTML文件中包含一个标记,这样就可以了 但是,我想使用UTF-16编码创建Javascript文件。因此,我计划在我的HTML文件中使用以下标记来处理这个问题 现在我真正遇到的问题是如何使用UTF-16编码创建Javascript——例如,假设我的Javascript代码是alert1;我创建了Javascr

以下是我正在尝试的,但不确定如何让它工作,或者它是否可能-

我有一个HTML页面MyHTMLPage.htm,我想从这个HTML文件中src一个Javascript。这很简单。我计划在我的HTML文件中包含一个标记,这样就可以了

但是,我想使用UTF-16编码创建Javascript文件。因此,我计划在我的HTML文件中使用以下标记来处理这个问题

现在我真正遇到的问题是如何使用UTF-16编码创建Javascript——例如,假设我的Javascript代码是alert1;我创建了Javascript文件,其内容为\u0061\u006c\u0065\u0072\u0074\u0028\u0031\u0029\u003b,但在运行时该文件似乎不会作为有效的Javascript执行

总而言之,以下是我所拥有的-

MyHTMLPage.html 当我在Firefox中打开HTML页面时,我在MyJavascript.js文件的开头得到了错误-语法错误-非法字符。我还尝试在上述Javascript的开头添加BOM字符\ufeff,但仍然出现相同的错误

我知道我可以将Javascript文件创建为-alert1;然后使用文本编辑器使用UTF-16编码保存它,然后浏览器可以正常运行。但是有没有办法使用\u符号或替代转义字符,仍然可以让Javascript正常执行


谢谢,

您误解了字符编码。字符编码是一种在幕后将字符表示为位的方案

您不会在文件中写入\u004a以使其成为utf-16,因为这实际上是一个由6个字符组成的序列:

\,u,0,0,4,a

如果您将上述内容保存为utf-16,则它将表示为以下位:

005C0075
00300030
00340061
如果您将其保存为utf-8,它将是:

5C753030
3461
占用了50%的空间和带宽。按字面意思写这个字符需要更少的时间,J:一个字节 utf-8中的4A

u表示法是一种仅使用一小部分ascii字符引用任何BMP字符的方法。如果你是 使用不支持unicode的文本编辑器时,您可以编写\u2665,而不是逐字书写♥ 和 浏览器会正确地显示它


如果出于某种奇怪的原因,您仍然希望使用utf-16,只需正常编写代码,将文件另存为utf-16,并使用适当的字符集头提供文件。

您不是在试图保护JavaScript代码,是吗?您只是在试图混淆JS吗??如果是这样的话,试试看,或者如果其他一切都失败了,总有一天会成功的
005C0075
00300030
00340061
5C753030
3461