浅谈javascript字符集

Javascript是区分大小写的:

关键字,变量,函数名,和所有标识符必须写在相同的情况下(一般用小写),这是从原来的C #学习完全不同。

例如:(这里是一个变量STR和STR的例子)

复制代码代码如下所示:
var str = ABC;
var str = ABC;
警报(STR);




如果STR和Str是相同的变量,那么警报(STR);输出应该是ABC,而不是前面图所示的abc,这正好表明Javascript是区分大小写的。

Unicode转义序列

Unicode字符集的出现是为了弥补ASCII码只能代表128个字符的局限性。但当我们想显示汉字和日常生活中的日本,这是显而易见的,ASCII码是不可能的。所以是ASCII和Unicode latin-1.first所有超集,Javascript程序是用Unicode字符集编译的,但是在一些计算机硬件和软件不能完全显示或完整的Unicode字符输入(如:E),为了解决Javascript的现象定义了一种特殊的序列,这个序列使用6个ASCII字符来表示任意16个Unicode编码,这种特殊的序列称为Unicode转义序列,即前缀 U,后面跟着4个十六进制数

例如:

复制代码代码如下所示:
var str = 'caf u00e9;
var str = 'caf E;
警报(STR + + +);我们可以看到显示是相同的效果。
警报(STR);




但是我们应该注意,Unicode是允许各种编码相同字符的方法,例如转义E:

E:

1。可以用Unicode字符 u00e9代表

2。也可以在E u0301表示(语调特征)

复制代码代码如下所示:
var str = 'caf u00e9;
var str =大家 u0301;
警报(STR);如下面所示,STR和STR结果的输出是相同的。
结果是相同的,但是它们的二进制编码简单地说是不一样的,所以输出false。


虽然在文本编辑器中显示的结果是相同的,但他们的二进制编码,简单的说就是不一样,和编程语言最终将转化为本地计算机的机器代码平台(二进制编码),计算机只能通过二进制编码的比较可以知道结果,所以他们最终的结果只能是虚假的

因此,这是Unicode允许多个方法对同一字符进行编码的最好解释,因为Unicode标准定义了所有字符的首选编码格式,因此它可以将文本转换为统一的Unicode转义序列,以便可以正确地比较它。

再次以E为例:

e和FAC的比较是相同的吗

E FAC和CAF转化为 u00e9或转换为E u0301,相比在FAC和CAF