使用charCodeAt()和charAt()方法,根据Unicode 编码,转换字符

JavaScript charCodeAt方法:获取字符串中某个具体字符的 Unicode 编码 JavaScript中的字符串是由一系列字符组成的,每个字符都对应着一个唯一的Unicode编码值。charCodeAt方法是JavaScript中用于获取字符串中某个具体字符的Unicode编码的方法。本文将详细介绍charCodeAt方法的使用,并给出相应的源代码示例。 阅读详情

1.charCodeAt() 方法

charCodeAt() 方法可返回指定位置的字符的 Unicode 编码。这个返回值是 0 - 65535 之间的整数。

方法 charCodeAt() 与 charAt() 方法执行的操作相似,只不过前者返回的是位于指定位置的字符的编码,而后者返回的是字符子串。

2.charAt() 方法

charAt() 方法可返回指定位置的字符。

请注意,JavaScript 并没有一种有别于字符串类型的字符数据类型,所以返回的字符是长度为 1 的字符串。

 

 举例:把回车符转化为 | 

function charFilter(str){
        var fileType = "";
        //非可见字符asc,多个就可以用数组
        for(var i = 0;i<str.length;i++){
                 if(str.charCodeAt(i)!==10 && str.charCodeAt(i)!==13){
                     fileType+=str.charAt(i);
                 }else{
          fileType+='  |  ';
        }
         }
        return fileType;
    }

 

3.Unicode

Unicode(统一码、万国码、单一码)是计算机科学领域里的一项业界标准,包括字符集、编码方案等。Unicode 是为了解决传统的字符编码方案的局限而产生的,它为每种语言中的每个字符设定了统一并且唯一的二进制编码,以满足跨语言、跨平台进行文本转换、处理的要求。1990年开始研发,1994年正式公布

起源

因为计算机只能处理数字,如果要处理文本,就必须先把文本转换为数字才能处理。最早的计算机在设计时采用8个比特(bit)作为一个字节(byte),所以,一个字节能表示的最大的整数就是255(二进制11111111=十进制255),0 - 255被用来表示大小写英文字母、数字和一些符号,这个编码表被称为ASCII编码,比如大写字母A的编码是65,小写字母z的编码是122。

如果要表示中文,显然一个字节是不够的,至少需要两个字节,而且还不能和ASCII编码冲突,所以,中国制定了GB2312编码,用来把中文编进去。

类似的,日文和韩文等其他语言也有这个问题。为了统一所有文字的编码,Unicode应运而生。Unicode把所有语言都统一到一套编码里,这样就不会再有乱码问题了。

Unicode通常用两个字节表示一个字符,原有的英文编码从单字节变成双字节,只需要把高字节全部填为0就可以。

因为Python的诞生比Unicode标准发布的时间还要早,所以最早的Python只支持ASCII编码,普通的字符串'ABC'在Python内部都是ASCII编码的。

Unicode 是为了解决传统的字符编码方案的局限而产生的,例如ISO 8859所定义的字符虽然在不同的国家中广泛地使用,可是在不同国家间却经常出现不兼容的情况。很多传统的编码方式都有一个共同的问题,即容许电脑处理双语环境(通常使用拉丁字母以及其本地语言),但却无法同时支持多语言环境(指可同时处理多种语言混合的情况)。

Unicode 编码包含了不同写法的字,如“ɑ/a”、“户/户/戸”。然而在汉字方面引起了一字多形的认定争议。

在文字处理方面,统一码为每一个字符而非字形定义唯一的代码(即一个整数)。换句话说,统一码以一种抽象的方式(即数字)来处理字符,并将视觉上的演绎工作(例如字体大小、外观形状、字体形态、文体等)留给其他软件来处理,例如网页浏览器或是文字处理器。

几乎所有电脑系统都支持基本拉丁字母,并各自支持不同的其他编码方式。Unicode为了和它们相互兼容,其首256字符保留给ISO 8859-1所定义的字符,使既有的西欧语系文字的转换不需特别考量;并且把大量相同的字符重复编到不同的字符码中去,使得旧有纷杂的编码方式得以和Unicode编码间互相直接转换,而不会丢失任何信息。举例来说,全角格式区段包含了主要的拉丁字母的全角格式,在中文、日文、以及韩文字形当中,这些字符以全角的方式来呈现,而不以常见的半角形式显示,这对竖排文字和等宽排列文字有重要作用。

在表示一个Unicode的字符时,通常会用“U+”然后紧接着一组十六进制的数字来表示这一个字符。在基本多文种平面(英文为 Basic Multilingual Plane,简写 BMP。它又简称为“零号平面”, plane 0)里的所有字符,要用四位十六进制数(例如U+4AE0,共支持六万多个字符);在零号平面以外的字符则需要使用五位或六位十六进制数了。旧版的Unicode标准使用相近的标记方法,但却有些微的差异:在Unicode 3.0里使用“U-”然后紧接着八位数,而“U+”则必须随后紧接着四位数。

方式

Unicode是国际组织制定的可以容纳世界上所有文字和符号的字符编码方案。目前的Unicode字符分为17组编排,0x0000 至 0x10FFFF,每组称为平面(Plane),而每平面拥有65536个码位,共1114112个。然而目前只用了少数平面。UTF-8、UTF-16、UTF-32都是将数字转换到程序数据的编码方案。

通用字符集(Universal Character Set, UCS)是由ISO制定的ISO 10646(或称ISO/IEC 10646)标准所定义的标准字符集。UCS-2用两个字节编码,UCS-4用4个字节编码。

历史上存在两个独立的尝试创立单一字符集的组织,即国际标准化组织(ISO)和多语言软件制造商组成的统一码联盟。前者开发的 ISO/IEC 10646 项目,后者开发的统一码项目。因此最初制定了不同的标准。

1991年前后,两个项目的参与者都认识到,世界不需要两个不兼容的字符集。于是,它们开始合并双方的工作成果,并为创立一个单一编码表而协同工作。从Unicode 2.0开始,Unicode采用了与ISO 10646-1相同的字库和字码;ISO也承诺,ISO 10646将不会替超出U+10FFFF的UCS-4编码赋值,以使得两者保持一致。两个项目仍都存在,并独立地公布各自的标准。但统一码联盟和ISO/IEC JTC1/SC2都同意保持两者标准的码表兼容,并紧密地共同调整任何未来的扩展。在发布的时候,Unicode一般都会采用有关字码最常见的字型,但ISO 10646一般都尽可能采用Century字型。

UCS-4根据最高位为0的最高字节分成27=128个group。每个group再根据次高字节分为256个平面(plane)。每个平面根据第3个字节分为256行 (row),每行有256个码位(cell)。group 0的平面0被称作BMP(Basic Multilingual Plane)。如果UCS-4的前两个字节为全零,那么将UCS-4的BMP去掉前面的两个零字节就得到了UCS-2。每个平面有216=65536个码位。Unicode计划使用了17个平面,一共有17×65536=1114112个码位。在Unicode 5.0.0版本中,已定义的码位只有238605个,分布在平面0、平面1、平面2、平面14、平面15、平面16。其中平面15和平面16上只是定义了两个各占65534个码位的专用区(Private Use Area),分别是0xF0000-0xFFFFD和0x100000-0x10FFFD。所谓专用区,就是保留给大家放自定义字符的区域,可以简写为PUA。

平面0也有一个专用区:0xE000-0xF8FF,有6400个码位。平面0的0xD800-0xDFFF,共2048个码位,是一个被称作代理区(Surrogate)的特殊区域。代理区的目的用两个UTF-16字符表示BMP以外的字符。在介绍UTF-16编码时会介绍。

如前所述在Unicode 5.0.0版本中,238605-65534*2-6400-2048=99089。余下的99089个已定义码位分布在平面0、平面1、平面2和平面14上,它们对应着Unicode定义的99089个字符,其中包括71226个汉字。平面0、平面1、平面2和平面14上分别定义了52080、3419、43253和337个字符。平面2的43253个字符都是汉字。平面0上定义了27973个汉字。

在Unicode中:汉字“字”对应的数字是23383(十进制),十六进制表示为5B57。在Unicode中,我们有很多方式将数字23383表示成程序中的数据,包括:UTF-8、UTF-16、UTF-32。UTF是“Unicode Transformation Format”的缩写,可以翻译成Unicode字符集转换格式,即怎样将Unicode定义的数字转换成程序数据。

例如,“汉字”对应的数字是0x6c49和0x5b57,而编码的程序数据是:

1

2

3

char      data_utf8[]={0xE6,0xB2,0x94,0xE5,0xAD,0x97};//UTF-8编码

char16_t data_utf16[]={0x6C49,0x5B57};        //UTF-16编码

char32_t data_utf32[]={0x00006C49,0x00005B57};//UTF-32编码

这里用char、char16_t、char32_t分别表示无符号8位整数,无符号16位整数和无符号32位整数。UTF-8、UTF-16、UTF-32分别以char、char16_t、char32_t作为编码单位。(注: char16_t 和 char32_t 是 C++ 11 标准新增的关键字。如果你的编译器不支持 C++ 11 标准,请改用 unsigned short 和 unsigned long。)“汉字”的UTF-8编码需要6个字节。“汉字”的UTF-16编码需要两个char16_t,大小是4个字节。“汉字”的UTF-32编码需要两个char32_t,大小是8个字节。根据字节序的不同,UTF-16可以被实现为UTF-16LE或UTF-16BE,UTF-32可以被实现为UTF-32LE或UTF-32BE。下面介绍UTF-8、UTF-16、UTF-32、字节序和BOM。 [1] 

UTF-8

UTF-8以字节为单位对Unicode进行编码。从Unicode到UTF-8的编码方式如下:

Unicode编码(十六进制) 

UTF-8 字节流(二进制)

000000-00007F

0xxxxxxx

000080-0007FF

110xxxxx 10xxxxxx

000800-00FFFF

1110xxxx 10xxxxxx 10xxxxxx

010000-10FFFF11110xxx10xxxxxx10xxxxxx10xxxxxx

UTF-8的特点是对不同范围的字符使用不同长度的编码。对于0x00-0x7F之间的字符,UTF-8编码与ASCII编码完全相同。UTF-8编码的最大长度是4个字节。从上表可以看出,4字节模板有21个x,即可以容纳21位二进制数字。Unicode的最大码位0x10FFFF也只有21位。

例1:“汉”字的Unicode编码是0x6C49。0x6C49在0x0800-0xFFFF之间,使用3字节模板:1110xxxx 10xxxxxx 10xxxxxx。将0x6C49写成二进制是:0110 1100 0100 1001, 用这个比特流依次代替模板中的x,得到:11100110 10110001 10001001,即E6 B1 89。

例2:Unicode编码0x20C30在0x010000-0x10FFFF之间,使用4字节模板:11110xxx 10xxxxxx 10xxxxxx 10xxxxxx。将0x20C30写成21位二进制数字(不足21位就在前面补0):0 0010 0000 1100 0011 0000,用这个比特流依次代替模板中的x,得到:11110000 10100000 10110000 10110000,即F0 A0 B0 B0。

UTF-16

UTF-16编码以16位无符号整数为单位。我们把Unicode

unicodeunicode

编码记作U。编码规则如下:

如果U<0x10000,U的UTF-16编码就是U对应的16位无符号整数(为书写简便,下文将16位无符号整数记作WORD)。

如果U≥0x10000,我们先计算U'=U-0x10000,然后将U'写成二进制形式:yyyy yyyy yyxx xxxx xxxx,U的UTF-16编码(二进制)就是:110110yyyyyyyyyy 110111xxxxxxxxxx。

为什么U'可以被写成20个二进制位?Unicode的最大码位是0x10FFFF,减去0x10000后,U'的最大值是0xFFFFF,所以肯定可以用20个二进制位表示。例如:Unicode编码0x20C30,减去0x10000后,得到0x10C30,写成二进制是:0001 0000 1100 0011 0000。用前10位依次替代模板中的y,用后10位依次替代模板中的x,就得到:1101100001000011 1101110000110000,即0xD843 0xDC30。

按照上述规则,Unicode编码0x10000-0x10FFFF的UTF-16编码有两个WORD,第一个WORD的高6位是110110,第二个WORD的高6位是110111。可见,第一个WORD的取值范围(二进制)是11011000 00000000到11011011 11111111,即0xD800-0xDBFF。第二个WORD的取值范围(二进制)是11011100 00000000到11011111 11111111,即0xDC00-0xDFFF。

为了将一个WORD的UTF-16编码与两个WORD的UTF-16编码区分开来,Unicode编码的设计者将0xD800-0xDFFF保留下来,并称为代理区(Surrogate):

D800-DB7F

High Surrogates

高位替代

DB80-DBFF

High Private Use Surrogates

高位专用替代

DC00-DFFF

Low Surrogates

低位替代

高位替代就是指这个范围的码位是两个WORD的UTF-16编码的第一个WORD。低位替代就是指这个范围的码位是两个WORD的UTF-16编码的第二个WORD。那么,高位专用替代是什么意思?我们来解答这个问题,顺便看看怎么由UTF-16编码推导Unicode编码。

如果一个字符的UTF-16编码的第一个WORD在0xDB80到0xDBFF之间,那么它的Unicode编码在什么范围内?我们知道第二个WORD的取值范围是0xDC00-0xDFFF,所以这个字符的UTF-16编码范围应该是0xDB80 0xDC00到0xDBFF 0xDFFF。我们将这个范围写成二进制:

1101101110000000 11011100 00000000 - 1101101111111111 1101111111111111

按照编码的相反步骤,取出高低WORD的后10位,并拼在一起,得到

1110 0000 0000 0000 0000 - 1111 1111 1111 1111 1111

XMLXML

即0xe0000-0xfffff,按照编码的相反步骤再加上0x10000,得到0xf0000-0x10ffff。这就是UTF-16编码的第一个WORD在0xdb80到0xdbff之间的Unicode编码范围,即平面15和平面16。因为Unicode标准将平面15和平面16都作为专用区,所以0xDB80到0xDBFF之间的保留码位被称作高位专用替代 [1]  。

UTF-32

UTF-32编码以32位无符号整数为单位。Unicode的UTF-32编码就是其对应的32位无符号整数。

字节序

字节序有两种,分别是“大端”(Big Endian, BE)和“小端”(Little Endian, LE)。

根据字节序的不同,UTF-16可被实现为UTF-16LE或UTF-16BE,UTF-32可被实现为UTF-32LE或UTF-32BE。例如:

Unicode编码

UTF-16LE 

UTF-16BE 

UTF32-LE 

UTF32-BE

0x006C49

49 6C

6C 49

49 6C 00 00

00 00 6C 49

0x020C30

43 D8 30 DC

D8 43 DC 30

30 0C 02 00

00 02 0C 30

Unicode标准建议用BOM(Byte Order Mark)来区分字节序,即在传输字节流前,先传输被作为BOM的字符“零宽无中断空格”。这个字符的编码是FEFF,而反过来的FFFE(UTF-16)和FFFE0000(UTF-32)在Unicode中都是未定义的码位,不应该出现在实际传输中。

下表是各种UTF编码的BOM:

UTF编码

Byte Order Mark (BOM)

UTF-8 without BOM无

UTF-8 with BOM

EF BB BF

UTF-16LE

FF FE

UTF-16BE

FE FF

UTF-32LE

FF FE 00 00

UTF-32BE

00 00 FE FF

分布

编辑

Unicode 到目前为止所定义的五个平面中,第0平面(BMP)最为重要,其编码分布如下:

注:中文范围 4E00-9FA5:CJK 统一表意符号 (CJK Unified Ideographs)

0000-007F:C0控制符及基本拉丁文 (C0 Control and Basic Latin)

0080-00FF:C1控制符及拉丁文补充-1 (C1 Control and Latin 1 Supplement)

0100-017F:拉丁文扩展-A (Latin Extended-A)

0180-024F:拉丁文扩展-B (Latin Extended-B)

0250-02AF:国际音标扩展 (IPA Extensions)

02B0-02FF:空白修饰字母 (Spacing Modifiers)

0300-036F:结合用读音符号 (Combining Diacritics Marks)

0370-03FF:希腊文及科普特文 (Greek and Coptic)

Microsoft WordMicrosoft Word

0400-04FF:西里尔字母(Cyrillic)

0500-052F:西里尔字母补充 (Cyrillic Supplement)

0530-058F:亚美尼亚语 (Armenian)

0590-05FF:希伯来文 (Hebrew)

0600-06FF:阿拉伯文 (Arabic)

0700-074F:叙利亚文 (Syriac)

0750-077F:阿拉伯文补充 (Arabic Supplement)

0780-07BF:马尔代夫语 (Thaana)

07C0-07FF:西非书面语言 (N'Ko)

0800-085F:阿维斯塔语及巴列维语(Avestan and Pahlavi)

0860-087F:Mandaic

0880-08AF:撒马利亚语 (Samaritan)

0900-097F:天城文书 (Devanagari)

0980-09FF:孟加拉语 (Bengali)

0A00-0A7F:锡克教文 (Gurmukhi)

0A80-0AFF:古吉拉特文 (Gujarati)

0B00-0B7F:奥里亚文 (Oriya)

0B80-0BFF:泰米尔文 (Tamil)

0C00-0C7F:泰卢固文 (Telugu)

0C80-0CFF:卡纳达文 (Kannada)

0D00-0D7F:德拉维族语 (Malayalam)

0D80-0DFF:僧伽罗语 (Sinhala)

0E00-0E7F:泰文 (Thai)

0E80-0EFF:老挝文 (Lao)

0F00-0FFF:藏文 (Tibetan)

1000-109F:缅甸语 (Myanmar)

10A0-10FF:格鲁吉亚语(Georgian)

1100-11FF:朝鲜文 (Hangul Jamo)

1200-137F:埃塞俄比亚语 (Ethiopic)

1380-139F:埃塞俄比亚语补充 (Ethiopic Supplement)

13A0-13FF:切罗基语 (Cherokee)

1400-167F:统一加拿大土著语音节 (Unified Canadian Aboriginal Syllabics)

1680-169F:欧甘字母 (Ogham)

16A0-16FF:如尼文(Runic)

1700-171F:塔加拉语 (Tagalog)

1720-173F:Hanunóo

1740-175F:Buhid

1760-177F:塔格班瓦文(Tagbanwa)

1780-17FF:高棉语 (Khmer)

1800-18AF:蒙古文 (Mongolian)

18B0-18FF:Cham

1900-194F:Limbu

1950-197F:德宏泰语 (Tai Le)

1980-19DF:新傣仂语 (New Tai Lue)

19E0-19FF:高棉语记号 (Kmer Symbols)

1A00-1A1F:Buginese

1A20-1A5F:Batak

1A80-1AEF:Lanna

1B00-1B7F:巴厘语 (Balinese)

1B80-1BB0:巽他语 (Sundanese)

1BC0-1BFF:Pahawh Hmong

1C00-1C4F:雷布查语(Lepcha)

1C50-1C7F:桑塔利文(Ol Chiki)

1C80-1CDF:曼尼普尔语(Meithei/Manipuri)

1D00-1D7F:语音学扩展 (Phonetic Extensions)

1D80-1DBF:语音学扩展补充 (Phonetic Extensions Supplem

unicodeunicode

ent)

1DC0-1DFF:结合用读音符号补充 (Combining Diacritics Marks Supplement)

1E00-1EFF:拉丁文扩充附加 (Latin Extended Additional)

1F00-1FFF:希腊语扩充 (Greek Extended)

2000-206F:常用标点(General Punctuation)

2070-209F:上标及下标 (Superscripts and Subscripts)

20A0-20CF:货币符号 (Currency Symbols)

20D0-20FF:组合用记号 (Combining Diacritics Marks for Symbols)

2100-214F:字母式符号 (Letterlike Symbols)

2150-218F:数字形式 (Number Form)

2190-21FF:箭头 (Arrows)

2200-22FF:数学运算符 (Mathematical Operator)

2300-23FF:杂项工业符号 (Miscellaneous Technical)

2400-243F:控制图片 (Control Pictures)

2440-245F:光学识别符 (Optical Character Recognition)

2460-24FF:封闭式字母数字 (Enclosed Alphanumerics)

2500-257F:制表符 (Box Drawing)

2580-259F:方块元素 (Block Element)

25A0-25FF:几何图形 (Geometric Shapes)

2600-26FF:杂项符号 (Miscellaneous Symbols)

2700-27BF:印刷符号 (Dingbats)

27C0-27EF:杂项数学符号-A (Miscellaneous Mathematical Symbols-A)

27F0-27FF:追加箭头-A (Supplemental Arrows-A)

2800-28FF:盲文点字模型 (Braille Patterns)

2900-297F:追加箭头-B (Supplemental Arrows-B)

2980-29FF:杂项数学符号-B (Miscellaneous Mathematical Symbols-B)

2A00-2AFF:追加数学运算符 (Supplemental Mathematical Operator)

2B00-2BFF:杂项符号和箭头 (Miscellaneous Symbols and Arrows)

2C00-2C5F:格拉哥里字母(Glagolitic)

2C60-2C7F:拉丁文扩展-C (Latin Extended-C)

2C80-2CFF:古埃及语 (Coptic)

2D00-2D2F:格鲁吉亚语补充 (Georgian Supplement)

2D30-2D7F:提非纳文 (Tifinagh)

2D80-2DDF:埃塞俄比亚语扩展 (Ethiopic Extended)

2E00-2E7F:追加标点 (Supplemental Punctuation)

2E80-2EFF:CJK 部首补充 (CJK Radicals Supplement)

2F00-2FDF:康熙字典部首 (Kangxi Radicals)

2FF0-2FFF:表意文字描述符 (Ideographic Description Characters)

3000-303F:CJK 符号和标点 (CJK Symbols and Punctuation)

3040-309F:日文平假名 (Hiragana)

30A0-30FF:日文片假名 (Katakana)

3100-312F:注音字母 (Bopomofo)

3130-318F:朝鲜文兼容字母 (Hangul Compatibility Jamo)

3190-319F:象形字注释标志 (Kanbun)

31A0-31BF:注音字母扩展 (Bopomofo Extended)

31C0-31EF:CJK 笔画 (CJK Strokes)

31F0-31FF:日文片假名语音扩展 (Katakana Phonetic Extensions)

3200-32FF:封闭式 CJK 文字和月份 (Enclosed CJK Letters and Months)

3300-33FF:CJK 兼容 (CJK Compatibility)

3400-4DBF:CJK 统一表意符号扩展 A (CJK Unified Ideographs Extension A)

4DC0-4DFF:易经六十四卦符号 (Yijing Hexagrams Symbols)

4E00-9FBF:CJK 统一表意符号 (CJK Unified Ideographs)

A000-A48F:彝文音节 (Yi Syllables)

A490-A4CF:彝文字根 (Yi Radicals)

A500-A61F:Vai

A660-A6FF:统一加拿大土著语音节补充 (Unified Canadian Aboriginal Syllabics Supplement)

A700-A71F:声调修饰字母 (Modifier Tone Letters)

A720-A7FF:拉丁文扩展-D (Latin Extended-D)

A800-A82F:Syloti Nagri

A840-A87F:八思巴字 (Phags-pa)

A880-A8DF:Saurashtra

A900-A97F:爪哇语 (Javanese)

A980-A9DF:Chakma

AA00-AA3F:Varang Kshiti

AA40-AA6F:Sorang Sompeng

AA80-AADF:Newari

AB00-AB5F:越南傣语 (Vi?t Thái)

AB80-ABA0:Kayah Li

AC00-D7AF:朝鲜文音节 (Hangul Syllables)

D800-DBFF:High-half zone of UTF-16

DC00-DFFF:Low-half zone of UTF-16

E000-F8FF:自行使用区域 (Private Use Zone)

F900-FAFF:CJK 兼容象形文字 (CJK Compatibility Ideographs)

FB00-FB4F:字母表达形式 (Alphabetic Presentation Form)

FB50-FDFF:阿拉伯表达形式A (Arabic Presentation Form-A)

FE00-FE0F:变量选择符 (Variation Selector)

FE10-FE1F:竖排形式 (Vertical Forms)

FE20-FE2F:组合用半符号 (Combining Half Marks)

FE30-FE4F:CJK 兼容形式 (CJK Compatibility Forms)

FE50-FE6F:小型变体形式 (Small Form Variants)

FE70-FEFF:阿拉伯表达形式B (Arabic Presentation Form-B)

FF00-FFEF:半型及全型形式 (Halfwidth and Fullwidth Form)

FFF0-FFFF:特殊 (Specials)

环境

编辑

在非 Unicode 环境下,由于不同国家和地区采用的字符集不一致,很可能出现无法正常显示所有字符的情况。微软公司使用了代码页(Codepage)转换表的技术来过渡性的部分解决这一问题,即通过指定的转换表将非 Unicode 的字符编码转换为同一字符对应的系统内部使用的 Unicode 编码。可以在“语言与区域设置”中选择一个代码页作为非 Unicode 编码所采用的默认编码方式,如936为简体中文GBK,950为繁体中文Big5(皆指PC上使用的)。在这种情况下,一些非英语的欧洲语言编写的软件和文档很可能出现乱码。而将代码页设置为相应语言中文处理又会出现问题,这一情况无法避免。从根本上说,完全采用统一编码才是解决之道,但是Windows操作系统由于历史遗留原因尚无法做到这一点。

代码页技术广泛为各种平台所采用。UTF-7 的代码页是65000,UTF-8 的代码页是65001。

字集

编辑

XML及其子集HTML采用UTF-8作为标准字集,理论上我们可以在各种支持XML标准的浏览器上显示任何地区文字的网页,只要电脑本身安装有合适的字体即可。可以利用&#nnn;的格式显示特定的字符。nnn代表该字符的十进制 Unicode 代码。如果采用十六进制代码,在编码之前加上x字符即可。但部分旧版本的浏览器可能无法识别十六进制代码。

然而部分由于Unicode 版本发展原因,很多浏览器只能显示UCS-2 完整字符集也即日常使用的Unicode 版本中的一个小子集。下表可以检验您的浏览器怎样显示各种各样的 Unicode 代码:

输入

编辑

综述

除了输入法外,操作系统会提供几种方法输入Unicode。像是Windows 2000之后的Windows系统就提供一个可点击的表。例如在Microsoft Word或者金山WPS之下,按下Alt键不放,输入 0 和某个字符的 Unicode 编码(十进制),再松开 Alt 键即可得到该字符,如Alt + 033865会得到Unicode字符“叶”(繁体)。另外按Alt + X 组合键,MS Word 也会将光标前面的字符同其十六进制的四位 Unicode 编码进行互相转换。

Unicode 编码表反弹

0000-0FFF 8000-8FFF 10000-10FFF 20000-20FFF 28000-28FFF

1000-1FFF 9000-9FFF 21000-21FFF 29000-29FFF

2000-2FFF A000-AFFF 22000-22FFF 2A000-2AFFF

3000-3FFF B000-BFFF 23000-23FFF

4000-4FFF C000-CFFF 1D000-1DFFF 24000-24FFF 2F000-2FFFF

5000-5FFF D000-DFFF 25000-25FFF

6000-6FFF E000-EFFF 26000-26FFF

7000-7FFF F000-FFFF 27000-27FFF E0000-E0FFF

Unicode 已经有6.2版本。世界上有一大批计算机、语言学等科学家专门研究Unicode,Unicode标准已经不单是一个编码标准,还是记录人类语言文字资料的一个巨大的数据库,同时从事人类文化遗产的发掘和保护工作。

对于中文而言,Unicode 16编码里面已经包含了GB18030里面的所有汉字(27484个字),Unicode标准准备把康熙字典的所有汉字放入到Unicode 32bit编码中。

简单地说,Unicode扩展自ASCII字元集。在严格的ASCII中,每个字元用7位元表示,或者电脑上普遍使用的每字元有8位元宽;而Unicode使用全16位元字元集。这使得Unicode能够表示世界上所有的书写语言中可能用於电脑通讯的字元、象形文字和其他符号。Unicode最初打算作为ASCII的补充,可能的话,最终将代替它。考虑到ASCII是电脑中最具支配地位的标准,所以这的确是一个很高的目标。

Unicode影响到了电脑工业的每个部分,但也许会对作业系统和程序设计语言的影响最大。从这方面来看,我们已经上路了。Windows NT从底层支持Unicode(不幸的是,Windows 98只是小部分支援Unicode)。先天即被ANSI束缚的C程序设计语言通过对宽字元集的支持来支持Unicode。

方法

中文输入法截至2009年3月,可以使用微软拼音2003或2007版本海峰五笔9.3版本,新注音输入法 和 VimIM 进行输入。

微软拼音 在输入法启动状态下,单击语言栏上的“功能菜单”按钮,指向“辅助输入法”即可发现“Unicode码输入方式”,利用它可以直接输入Unicode相应十六进制值的方式输入相应文字。例如中文“胥”输入“5066”,朝鲜语文字“셅”输入“c145”(不需要在前面加0x或x)。海峰五笔 此输入法已经直接支持透过五笔码输入方式输入Unicode内的任意中日韩汉字,但无法使用键入Unicode码的方式输入。例如汉字(Unicode部分)“㗎”为“keks”,CJK扩展B区的“㿱”为“iyho”和CJK扩展C区的“뇛”为“muih”。新注音输入法 在输入法启动状态时,打入键盘上的“多功能前导字符键”(及通用键盘上之“`”),第一次使用会弹出说明。输入Unicode字符“胥”则是在键盘上键入“`U5066”。而韩语中的“셅”,则输入“`UC145”。而要输入日语自制汉字“卡”,则是“`U5CE0”。VimIM 在 Vim 环境中,可以直接键入十进制或十六进制 Unicode 码。既不需要启动输入法,也不需要码表。

日文输入法使用Microsoft IME 2007,可以在IME PAD里找到UNICODE的点击表。点击字符即可输入。选择字体可以预览字符效果。

其他

除了输入法外,操作系统也会提供另外几种方法输入 Unicode。像是Windows 2000之后的 Windows 系统就提供一个可点击的字符映射表。又或者在Microsoft Word下,按下 Alt 键不放,输入 0 和某个字符的 Unicode 编码(十进制),再松开 Alt 键即可得到该字符,如Alt + 033865会得到 Unicode 字符叶。另外按Alt + X 组合键,MS Word 也会将光标前面的字符,同其十六进制的四位Unicode 编码进行互相转换。

新建文本也能输入、右键 [1] 

使用

编辑

基本上,计算机只是处理数字。它们指定一个数字,来储存字母或其他字符。在创造Unicode之前,有数百种指定这些数字的编码系统。没有一个编码可以包含足够的字符:例如,单单欧洲共同体就需要好几种不同的编码来包括所有的语言。即使是单一种语言,例如英语,也没有哪一个编码可以适用于所有的字母,标点符号,和常用的技术符号。这些编码系统也会互相冲突。也就是说,两种编码可能使用相同的数字代表两个不同的字符,或使用不同的数字代表相同的字符。任何一台特定的计算机(特别是服务器)都需要支持许多不同的编码,但是,不论什么时候数据通过不同的编码或平台之间,那些数据总会有损坏的危险。

为什么使用Unicode其实原因很简单,因为Unicode比ANSI好用。 自从Windows2K开始,Win的系统内核开始完全支持并完全应用Unicode编写,所有ANSI字符在进入底层前,都会被相应的API转换成Unicode。所以,如果你一开始就使用Unicode,则可以减少转换的用时和RAM开销。 对于JAVA/.NET等这些“新”的语言来说,内置的字符串所使用的字符集已经完全是Unicode。最重要的是,世界上大多数程序用的字符集都是Unicode,因为Unicode有利于程序国际化和标准化。

简史

编辑

1990年开始研发,1994年正式公布。随着计算机工作能力的增强,Unicode也在面世以来的十多年里得到普及。

Unicode6.3版已发布(2013年11月)。在Unicode联盟网站上可以查看完整的6.3的核心规范。

Unicode定义了大到足以代表人类所有可读字符的字符集。

Java语言就用到了Unicode编码,从而实现了该语言的国际通用性。

Unicode截至目前为止,共发布了以下多个版本:

Unicode 1.0:1991年10月

Unicode 1.0.1:1992年6月

Unicode 1.1:1993年6月

Unicode 2.0:1997年7月

Unicode 2.1:1998年5月

Unicode 2.1.2:1998年5月

Unicode 3.0:1999年9月;涵盖了来自ISO 10646-1的十六比特通用字符集(UCS)基本多文种平面(Basic Multilingual Plane)

Unicode 3.1:2001年3月;新增从ISO 10646-2定义的辅助平面(Supplementary Planes)

Unicode 3.2:2002年3月

Unicode 4.0:2003年4月

Unicode 4.0.1:2004年3月

Unicode 4.1:2005年3月

Unicode 5.0:2006年7月

Unicode 5.1:2008年4月

Unicode 5.2:2009年10月

Unicode 6.0:2010年10月

Unicode 6.1:2012年1月31日

Unicode 6.2:2012年9月

Unicode 6.3:2013年11月19日

Unicode 7.0:2014年6月15日

Unicode 8.0:2015年6月17日

Unicode 9.0:2016年6月22日

Unicode 10.0:2017年6月18日

Unicode 11.0:2018年6月5日

编码表

编辑

U+0123456789ABCDEF
4e00一丁丂七丄丅丆万丈三上下丌不与丏
4e10丐丑丒专且丕世丗丘丙业丛东丝丞丢
4e20丠両丢丣两严并丧丨丩个丫丬中丮丯
4e30丰丱串丳临丵丶丷丸丹为主丼丽举丿
4e40乀乁乂乃乄久乆乇么义乊之乌乍乎乏
4e50乐乑乒乓乔乕乖乗乘乙乚乛乜九乞也
4e60习乡乢乣乤乥书乧乨乩乪乫乬乭乮乯
4e70买乱乲乳乴乵乶乷乸乹乺乻乼乽乾乿
4e80亀亁乱亃亄亅了亇予争亊事二亍于亏
4e90亐云互亓五井亖亗亘亘亚些亜亝亚亟
4ea0亠亡亢亣交亥亦产亨亩亪享京亭亮亯
4eb0亰亱亲亳亴亵亶亷亸亹人亻亼亽亾亿
4ec0什仁仂仃仄仅仆仇仈仉今介仌仍从仏
4ed0仐仑仒仓仔仕他仗付仙仚仛仜仝仞仟
4ee0仠仡仢代令以仦仧仨仩仪仫们仭仮仯
4ef0仰仱仲仳仴仵件价仸仹仺任仼份仾仿
4f00伀企伂伃伄伅伆伇伈伉伊伋伌伍伎伏
4f10伐休伒伓伔夫伖众优伙会伛伜伝伞伟
4f20传伡伢伣伤伥伦伧伨伩伪伫伬伭伮伯
4f30估伱伲伳伴伵伶伷伸伹伺伻似伽伾伿
4f40佀佁佂佃佄佅但伫布佉佊佋佌位低住
4f50佐佑佒体占何佖佗佘余佚佛作佝佞佟
4f60你佡佢佣佤佥佦佧佨佩佪佫佬佭佮佯
4f70佰佱佲佳佴并佶佷佸佹佺佻佼佽佾使
4f80侀侁侂侃侄侅来侇侈侉侊例侌侍侎侏
4f90侐侑侒侓侔侕仑侗侘侙徇供侜依侞侟
4fa0侠価侢侣侤侥侦侧侨侩侪侫侬侭侮侯
4fb0侰侱侲侳侴侵侣局侸侹侺侻侼侽侾便
4fc0俀俣系促俄俅俆俇俈俉俊俋俌俍俎俏
4fd0俐俑俒俓俔俕俖俗俘俙俚俛俜保俞俟
4fe0侠信俢俣俤俥俦俧俨俩俪俫俬俭修俯
4ff0俰俱俲俳俴表俶俷俸俹俺俻俼俽俾俿
5000伥倁倂倃倄倅俩倇倈仓倊个倌倍倎倏
5010倐们倒倓倔倕幸倗倘候倚倛倜倝倞借
5020倠倡倢仿値倥倦倧倨倩倪伦倬倭倮倯
5030倰倱倲倳倴倵倶倷倸倹债倻值倽倾倿
5040偀偁偂偃偄偅偆假偈伟偊偋偌偍偎偏
5050偐偑偒偓偔偕偖偗偘偙做偛停偝偞偟
5060偠偡偢偣偤健偦偧偨偩逼偫偬偭偮偯
5070偰偱偲偳侧侦偶偷偸偹偺偻偼伪偾偿
5080傀傁傂傃傄傅傆傇僳傉傊傋傌傍傎傏
5090傐杰傒傓傔傕伧傗伞备效傛傜傝傞傟
50a0傠傡家傣傤傥傦傧储傩傪傫催佣傮偬
50b0傰傱傲传伛债傶伤傸傹傺傻傼傽倾傿
50c0僀僁偻僃僄仅僆僇僈佥仙僋僌働僎像
50d0僐侨僒僓僔仆僖僗僘僙僚僛僜僝伪僟
50e0僠僡僢僣僤侥僦僧偾僩僪僫僬僭僮僯
50f0僰雇僲僳僴僵僶僷僸价僺僻僼僽僾僿
5100仪儁侬儃亿儅儆儇侩俭儊儋儌儍儎儏
5110傧儑儒儓俦侪儖儗尽儙儚儛儜儝儞偿
5120儠儡儢儣儤儥儦儧儨儩优儫儬儭儮儯
5130儰儱储儳儴儵儶俪儸儹傩傥俨儽儾儿
5140兀允兂元兄充兆凶先光兊克兑免兎兏
5150児兑儿兓兔兕兖兖兘兙党兛兜兝兞兟
5160兠兡兢兣兤入兦内全两兪八公六兮兯
5170兰共兲关兴兵其具典兹兺养兼兽兾兿
5180冀冁冂冃冄内円冇冈冉册冋册再冎冏
5190冐胄冒冓冔冕冖冗冘写冚军农冝冞冟
51a0冠冡冢冣冤冥冦冧冨冩幂冫冬冭冮冯
51b0冰冱冲决冴况冶冷冸冹冺冻冼冽冾冿
51c0净凁凂凃凄凅准凇净凉凊凋凌冻凎减
51D0凐凑凒凓凔凕凖凗凘凙凚凛凛凝凞凟
51E0几凡凢凣凤凥処凧凨凩凪凫凬凭凮凯
51F0凰凯凲凳凴凵凶凷凸凹出击凼函凾凿
5200刀刁刂刃刄刅分切刈刉刊刋刌刍刎刏
5210刐刑划刓刔刕刖列刘则刚创刜初刞刟
5220删刡刢刣判别刦刧刨利删别刬刭刮刯
5230到刱刲刳刴刵制刷券刹刺刻刼刽刾刿
5240剀剁剂剃刭剅剆则剈锉削克剌前刹剏
5250剐剑剒剓剔剕剖剗剘剙剚刚剜剥剞剟
5260剠剡剢剣剤剥剦剧剨剩剪剫剬剭剐副
5270剰剱割剳剀创剶铲剸剹剺剻剼剽剾剿
5280劀劁劂划札劅劆剧劈刘刽劋刿剑劎劏
5290劐剂劒劓劔劕劖劗劘劙劚力劜劝办功
52A0加务劢劣劤劥劦劧动助努劫劬劭劮劯
52B0劰励劲劳労劵劶劷劸効劺劻劼劽劾势
52C0勀劲勂勃勄勅勆勇勈勉勊勋勌勍勎勏
52D0勐勑勒勓勔动勖勗勘务勚勋勜胜劳募
52E0勠勡势勣勤勥勦勧勨勩勪勫勬勭勮勯
52F0勰劢勲勋勴励勶勷劝勹勺匀勼勽勾勿
5300匀匁匂匃匄包匆匇匈匉匊陶匌匍匎匏
5310匐匑匒匓匔匕化北匘匙匚匛匜匝匞匟
5320匠匡匢匣匤匥匦匧匨匩匪匫匬匦匮汇
5330匰匮匲匳匴匵匶匷匸匹区医匼匽匾匿
5340区十卂千卄卅卆升午卉半卋卌卍华协
5350卐卑卒卓协单卖南単卙博卛卜卝卞卟
5360占卡卢卣卤卥卦卧卨卩卪卫卬卭卮卯
5370印危卲即却卵卶卷卸恤卺却卼卽卾卿
5380厀厁厂厃厄厅历厇厈厉厊压厌厍厎厏
5390厐厑厒厓厔厕厖厗厘厍厚厛厜厝厞原
53a0厕厡厢厣厤厥厦厧厨厩厪厫厬厌厮厯
53b0厰厱厉厳厣厵厶厷厸厹厺去厼厽厾县
53c0叀叁参参叄叅叆叇又叉及友双反収叏
53d0叐发叒叓叔叕取受变叙叚叛叜叝叞叟
53e0叠叡丛口古句另叧叨叩只叫召叭叮可
53f0台叱史右叴叵叶号司叹叺叻叼叽叾叿
5400吀吁吂吃各吅吆吇合吉吊吋同名后吏
5410吐向吒吓吔吕吖吗吘吙吚君吜吝吞吟
5420吠吡吢吣吤吥否吧吨吩吪含听吭吮启
5430吰吱吲吴吴吵呐吷吸吹吺吻吼吽吾吿
5440呀呁吕呃呄呅呆呇呈呉告呋呌呍呎呏
5450呐呑呒呓呔呕呖呗员呙呚呛呜呝呞呟
5460呠呡呢呣呤呥呦呧周呩呪呫呬呭呮呯
5470呰呱呲味呴呵呶呷呸呹呺呻呼命呾呿
5480咀咁咂咃咄咅咆咇咈咉咊咋和咍咎咏
5490咐咑咒咓咔咕咖咗咘咙咚咛咜咝咞咟
54a0咠咡咢咣咤咥咦咧咨咩咪咫咬咭咮咯
54b0咰咱咲咳咴咵咶啕咸咹咺咻呙咽咾咿
54c0哀品哂哃哄哅哆哇哈哉哊哋哌响哎哏
54d0哐哑哒哓哔哕哖哗哘哙哚哛哜哝哞哟
54e0哠员哢哣哤哥哦哧哨哩哪哫哬哭哮哯
54f0哰哱哲哳哴哵哶哷哸哹哺哻哼哽哾哿
5500唀唁唂唃呗唅唆唇唈唉唊唋唌唍唎唏
5510唐唑唒唓唔唕唖唗唘唙唚唛唜唝唞唟
5520唠唡唢唣唤唥唦唧唨唩唪唫唬唭售唯
5530唰唱唲唳唴唵唶唷念唹唺唻唼唽唾唿
5540啀啁啂啃啄啅商啇啈啉啊啋啌啍啎问
5550啐啑啒启啔啕啖啗啘啙啚啛啜啝哑启
5560啠啡啢衔啤啥啦啧啨啩啪啫啬啭啮啯
5570啰啱啲啳啴啵啶啷啸啹啺啻啼啽啾啿
5580喀喁喂喃善喅喆喇喈喉喊喋喌喍喎喏
5590喐喑喒喓喔喕喖喗喘喙唤喛喜喝喞喟
55a0喠喡喢喣喤喥喦喧喨喩丧喫乔喭单喯
55b0喰喱哟喳喴喵営喷喸喹喺喻喼喽喾喿
55c0嗀嗁嗂嗃嗄嗅呛啬嗈嗉嗊嗋嗌嗍吗嗏
55d0嗐嗑嗒嗓嗔嗕嗖嗗嗘嗙呜嗛嗜嗝嗞嗟
55e0嗠嗡嗢嗣嗤嗥嗦嗧嗨唢嗪嗫嗬嗭嗮嗯
55f0嗰嗱嗲嗳嗴嗵哔嗷嗸嗹嗺嗻嗼嗽嗾嗿
5600嘀嘁嘂嘃嘄嘅叹嘇嘈嘉嘊嘋嘌喽嘎嘏
5610嘐嘑嘒嘓呕嘕啧尝嘘嘙嘚嘛唛嘝嘞嘟
5620嘠嘡嘢嘣嘤嘥嘦嘧嘨哗嘪嘫嘬嘭唠啸
5630叽嘱嘲嘳嘴哓嘶嘷呒嘹嘺嘻嘼嘽嘾嘿
5640噀恶噂噃噄噅噆噇噈噉噊噋噌噍噎噏
5650噐噑噒嘘噔噕噖噗噘噙噚噛噜噝噞噟
5660哒噡噢噣噤哝哕噧器噩噪噫噬噭噮嗳
5670噰噱哙噳喷噵噶噷吨当噺噻噼噽噾噿
5680咛嚁嚂嚃嚄嚅嚆吓嚈嚉嚊嚋哜嚍嚎嚏
5690嚐嚑嚒嚓嚔噜嚖嚗嚘啮嚚嚛嚜嚝嚞嚟
56a0嚠嚡嚢嚣嚤嚥呖嚧咙嚩嚪嚫嚬嚭向嚯
56b0嚰嚱嚲喾严嚵嘤嚷嚸嚹嚺嚻嚼嚽嚾嚿
56c0啭嗫嚣囃囄冁囆囇呓罗囊囋囌囍囎囏
56d0囐嘱囒囓囔囕囖囗囘囙囚四囜囝回囟
56e0因囡团団囤囥囦囧囨囩囱囫囬园囮囯
56f0困囱囲図围囵囶囷囸囹固囻囼国图囿
5700圀圁圂圃圄圅圆囵圈圉圊国圌围圎圏
5710圐圑园圆圔圕图圗团圙圚圛圜圝圞土
5720圠圡圢圣圤圥圦圧在圩圪圫圬圭圮圯
5730地圱圲圳圴圵圶圷圸圹场圻圼圽圾圿
5740址坁坂坃坄坅坆均坈坉坊坋坌坍坎坏
5750坐坑坒坓坔坕坖块坘坙坚坛坜坝坞坟
5760坠坡坢坣坤坥坦坧坨坩坪坫坬坭坮坯
5770坰坱坲坳坴丘坶坷坸坹坺坻坼坽坾坿
5780垀垁垂垃垄垅垆垇垈垉垊型垌垍垎垏
5790垐垑垒垓垔垕垖垗垘垙垚垛垜垝垞垟
57a0垠垡垢垣垤垥垦垧垨垩垪垫垬垭垮垯
57b0垰垱垲垳垴垵垶垷垸垹垺垻垼垽垾垿
57c0埀埁埂埃埄埅埆埇埈埉埊埋埌埍城埏
57d0埐埑埒埓埔埕埖埗埘埙埚埛埜埝埞域
57e0埠垭埢埣埤埥埦埧埨埩埪埫埬埭埮埯
57f0埰埱埲埳埴埵埶执埸培基埻埼埽埾埿
5800堀堁堂堃堄坚堆堇堈堉垩堋堌堍堎堏
5810堐堑堒堓堔堕堖堗堘堙堚堛堜埚堞堟
5820堠堡堢堣堤堥堦堧堨堩堪堫堬堭堮尧
5830堰报堲堳场堵堶堷堸堹堺堻堼堽堾堿
5840塀塁塂塃塄塅塆塇塈塉块茔塌塍塎垲
5850塐塑埘塓塔塕塖涂塘塙冢塛塜塝塞塟
5860塠塡坞塣埙塥塦塧塨塩塪填塬塭塮塯
5870塰塱塲塳塴尘塶塷塸堑塺塻塼塽塾塿
5880墀墁墂境墄墅墆墇墈墉垫墋墌墍墎墏
5890墐墑墒墓墔墕墖増墘墙墚墛坠墝增墟
58a0墠墡墢墣墤墥墦墧墨墩墪墫墬墭堕墯
58b0墰墱墲坟墴墵墶墷墸墹墺墻墼墽垦墿
58c0壀壁壂壃壄壅壆坛壈壉壊壋壌壍壎壏
58d0壐壑壒压壔壕壖壗垒圹垆壛壜壝坏垄
58e0壠壡坜壣壤壥壦壧壨坝壪士壬壭壮壮
58f0声壱売壳壴壵壶壷壸壹壶壻壼寿壾壿
5900夀夁夂夃处夅夆备夈変夊夋夌复夎夏
5910夐夑夒夓夔夕外夗夘夙多夛夜夝夞够
5920够夡梦夣夤夥夦大夨天太夫夬夭央夯
5930夰失夲夳头夵夶夷夸夹夺夻夼夽夹夿
5940奀奁奂奃奄奅奆奇奈奉奊奋奌奍奎奏
5950奂契奒奓奔奕奖套奘奙奚奛奜奝奞奟
5960奠奡奢奣奤奥奦奥奨奁夺奫奖奭奋奯
5970奰奱奲女奴奵奶奷奸她奺奻奼好奾奿
5980妀妁如妃妄妅妆妇妈妉妊妋妌妍妎妏
5990妐妑妒妓妔妕妖妗妘妙妚妛妜妆妞妟
59a0妠妡妢妣妤妥妦妧妨妩妪妫妬妭妮妯
59b0妰妱妲你妴妵妶妷妸妹妺妻妼妽妾妿
59c0姀姁姂姃姄姅姆姇姈姉姊始姌姗姎姏
59d0姐姑姒姓委姕姖姗姘姙姚姛姜姝姞姟
59e0姠姡姢姣姤姥奸姧姨姩侄姫姬姭姮姯
59f0姰姱姲姳姴姵姶姷姸姹姺姻姼姽姾姿
5a00娀威娂娃娄娅娆娇娈娉娊娋娌娍娎娏
5a10娐娑娒娓娔娕娖娗娘娙娚娱娜娝娞娟
5a20娠娡娢娣娤娥娦娧娨娩娪娫娬娭娮娯
5a30娰娱娲娳娴娵娶娷娸娹娺娻娼娽娾娿
5a40婀娄婂婃婄婅婆婇婈婉婊婋婌婍婎婏
5a50婐婑婒婓婔婕婖婗婘婙婚婛婜婝婞婟
5a60婠婡婢婣婤婥妇婧婨婩婪婫婬娅婮婯
5a70婰婱婲婳婴婵婶婷婸婹婺婻婼婽婾婿
5a80媀媁媂媃媄媅媆媇媈媉媊媋媌媍媎媏
5a90媐媑媒媓媔媕媖媗媘媙媚媛媜媝媞媟
5aa0媠媡媢媣媤媥媦娲媨媩媪媫媬媭媮妫
5ab0媰媱媲媳媴媵媶媷媸媹媺媻媪妈媾媿
5ac0嫀嫁嫂嫃嫄嫅嫆嫇嫈嫉嫊嫋嫌嫍嫎嫏
5ad0嫐嫑嫒嫓嫔嫕嫖妪嫘嫙嫚嫛嫜嫝嫞嫟
5ae0嫠嫡嫢嫣嫤嫥嫦嫧嫨嫩嫪嫫嫬嫭嫮嫯
5af0嫰嫱嫲嫳嫴妩嫶嫷嫸嫹嫺娴嫼嫽嫾嫿
5b00妫嬁嬂嬃嬄嬅嬆嬇娆嬉嬊婵娇嬍嬎嬏
5b10嬐嬑嬒嬓嬔嬕嬖嬗嬘嫱嬚嬛嬜嬝嬞嬟
5b20嬠嫒嬢嬣嬷嬥嬦嬧嬨嬩嫔嬫嬬嬭嬮嬯
5b30婴嬱嬲嬳嬴嬵嬶嬷婶嬹嬺嬻嬼嬽嬾嬿
5b40孀孁孂娘孄孅孆孇孈孉孊孋娈孍孎孏
5b50子孑孒孓孔孕孖字存孙孚孛孜孝孞孟
5b60孠孡孢季孤孥学孧孨孩孪孙孬孭孮孯
5b70孰孱孲孳孴孵孶孷学孹孺孻孼孽孾孪
5b80宀宁宂它宄宅宆宇守安宊宋完宍宎宏
5b90宐宑宒宓宔宕宖宗官宙定宛宜宝实実
5ba0宠审客宣室宥宦宧宨宩宪宫宬宭宫宯
5bb0宰宱宲害宴宵家宷宸容宺宻宼宽宾宿
5bc0寀寁寂寃寄寅密寇寈寉寊寋富寍寎寏
5bd0寐寑寒寓寔寕寖寗寘寙寚寛寜寝寞察
5be0寠寡寝寣寤寥实宁寨审寪写宽寭寮寯
5bf0寰寱寲寳寴宠宝寷寸对寺寻导寽対寿
5c00尀封専尃射尅将将专尉尊寻尌对导小
5c10尐少尒尓尔尕尖尗尘尙尚尛尜尝尞尟
5c20尠尡尢尣尤尥尦尧尨尩尪尫尬尭尮尯
5c30尰就尲尳尴尵尶尴尸尹尺尻尼尽尾尿
5c40局屁层屃屄居届屇屈屉届屋屌屍屎屏
5c50屐屑屒屓屔展屖屗屘屙屚屛屉屝属屟
5c60屠屡屡屣层履屦屧屦屩屪屫属屭屮屯
5c70屰山屲屳屴屵屶屷屸屹屺屻屼屽屾屿
5c80岀岁岂岃岄岅岆岇岈岉岊岋岌岍岎岏
5c90岐岑岒岓岔岕岖岗岘岙岚岛岜岝岞岟
5ca0岠冈岢岣岤岥岦岧岨岩岪岫岬岭岮岯
5cb0岰岱岲岳岴岵岶岷岸岹岺岻岼岽岾岿
5cc0峀峁峂峃峄峅峆峇峈峉峊峋峌峍峎峏
5cd0峐峑峒峓峔峕峖峗峘峙峚峛峜峝峞峟
5ce0峠峡峢峣峤峥峦峧峨峩峪峫峬峭峮峯
5cf0峰峱峲峳岘峵岛峷峸峹峺峻峼峡峾峿
5d00崀崁崂崃崄崅崆崇崈崉崊崋崌崃崎崏
5d10崐昆崒崓崔崕崖岗崘仑崚崛崜崝崞崟
5d20崠崡峥崣崤崥崦崧崨崩崪崫崬崭崮崯
5d30崰崱崲嵛崴崵崶崷崸崹崺崻崼崽崾崿
5d40嵀嵁嵂嵃嵄嵅嵆嵇嵈嵉嵊嵋嵌嵍嵎嵏
5d50岚嵑嵒嵓嵔嵕嵖嵗嵘嵙嵚嵛嵜嵝嵞嵟
5d60嵠嵡嵢嵣嵤嵥嵦嵧嵨嵩嵪嵫嵬嵭嵮嵯
5d70嵰嵱嵲嵳嵴嵵嵶嵷嵸嵹嵺嵻嵼嵽嵾嵿
5d80嶀嵝嶂嶃崭嶅嶆岖嶈嶉嶊嶋嶌嶍嶎嶏
5d90嶐嶑嶒嶓嶔嶕嶖崂嶘嶙嶚嶛嶜嶝嶞嶟
5da0峤嶡嶢嶣嶤嶥嶦峄嶨嶩嶪嶫嶬嶭嶮嶯
5db0嶰嶱嶲嶳嶴嶵嶶嶷嵘嶹岭嶻屿岳嶾嶿
5dc0巀巁巂巃巄巅巆巇巈巉巊岿巌巍巎巏
5dd0巐巑峦巓巅巕巖巗巘巙巚巛巜川州巟
5de0巠巡巢巣巤工左巧巨巩巪巫巬巭差巯
5df0巯己已巳巴巵巶巷巸卺巺巻巼巽巾巿
5e00帀币市布帄帅帆帇师帉帊帋希帍帎帏
5e10帐帑帒帓帔帕帖帗帘帙帚帛帜帝帞帟
5e20帠帡帢帣帤帅带帧帨帩帪师帬席帮帯
5e30帰帱帲帐帴帵带帷常帹帺帻帼帽帾帿
5e40帧幁幂帏幄幅幆幇幈幉幊幋幌幍幎幏
5e50幐幑幒幓幔幕幖帼帻幙幚幛幜幝幞帜
5e60幠幡幢币幤幥幦幧幨幩幪帮帱幭幮幯
5e70幰幱干平年开并幷幸干幺幻幼幽几广
5e80庀庁庂広庄庅庆庇庈庉床庋庌庍庎序
5e90庐庑庒库应底庖店庘庙庚庛府庝庞废
5ea0庠庡庢庣庤庥度座庨庩庪库庬庭庮庯
5eb0庰庱庲庳庴庵庶康庸庹庺庻庼庽庾庿
5ec0廀厕厢廃厩廅廆廇厦廉廊廋廌廍廎廏
5ed0廐廑廒廓廔廕廖廗廘廙厨廛廜廝廞庙
5ee0厂庑废广廤廥廦廧廨廪廪廫庐廭廮廯
5ef0廰廱廲厅廴廵延廷廸廹建廻廼廽廾廿
5f00开弁异弃弄弅弆弇弈弉弊弋弌弍弎式
5f10弐弑弑弓吊引弖弗弘弙弚弛弜弝弞弟
5f20张弡弢弣弤弥弦弧弨弩弪弫弬弭弮弯
5f30弰弱弲弪弴张弶强弸弹强弻弼弽弾弿
5f40彀彁彂彃彄彅彆彇弹彉彊彋弥彍弯彏
5f50彐彑归当彔录彖彗彘汇彚彛彜彝彞彟
5f60彠彡形彣彤彦彦彧彨彩彪雕彬彭彮彯
5f70彰影彲彳彴彵彶彷彸役彺彻彼彽彾佛
5f80往征徂徃径待徆徇很徉徊律後徍徎徏
5f90徐径徒従徔徕徖得徘徙徚徛徜徝从徟
5fa0徕御徢徣徤徥徦徧徨复循徫徬徭微徯
5fb0徰徱徲徳徴徵徶德徸彻徺徻徼徽徾徿
5fc0忀忁忂心忄必忆忇忈忉忊忋忌忍忎忏
5fd0忐忑忒忓忔忕忖志忘忙忚忛応忝忞忟
5fe0忠忡忢忣忤忥忦忧忨忩忪快忬忭忮忯
5ff0忰忱忲忳忴念忶汹忸忹忺忻忼忽忾忿
6000怀态怂怃怄怅怆怇怈怉怊怋怌怍怎怏
6010怐怑怒怓怔怕怖怗怘怙怚怛怜思怞怟
6020怠怡怢怣怤急怦性怨怩怪怫怬怭怮怯
6030怰怱怲怳怴怵怶怷怸怹怺总怼怽怾怿
6040恀恁恂恃恄恅恒恇恈恉恊恋恌恍恎恏
6050恐恑恒恓恔恕恖恗恘恙恚恛恜恝恞汹
6060恠恡恢恣恤耻恦恧恨恩恪恫恬恭恮息
6070恰恱恲恳恴恵恶恷恸恹恺恻恼恽恾恿
6080悀悁悂悃悄悦悆悇悈悉悊悋悌悍悎悏
6090悐悑悒悓悔悕悖悗悘悙悚悛悜悝悞悟
60a0悠悡悢患悤悥悦悧您悩悪悫悬悭悮悯
60b0悰悱悲悳悴怅闷悷悸悹悺悻悼凄悾悿
60c0惀惁惂惃惄情惆惇惈惉惊惋惌惍惎惏
60d0惐惑惒惓惔惕惖惗惘惙惚惛惜惝惞惟
60e0惠恶惢惣惤惥惦惧惨惩惪惫惬惭惮惯
60f0惰恼恽想惴惵惶惷惸惹惺恻惼惽惾惿
6100愀愁愂愃愄愅愆愇愈愉愊愋愌愍愎意
6110愐愑愒愓愔愕愖愗愘愙愚爱惬愝愞感
6120愠愡愢愣愤愥愦愧悫愩愪愫愬愭愮愯
6130愰愱愲愳怆愵愶恺愸愹愺愻愼愽忾愿
6140慀慁慂慃栗慅慆慇慈慉慊态慌愠慎慏
6150慐慑慒慓慔慕慖慗惨慙惭慛慜慝慞恸
6160慠慡慢惯悫慥慦慧慨慩怄怂慬慭虑慯
6170慰慱慲悭慴慵庆慷慸慹慺慻戚慽欲慿
6180憀憁忧憃憄憅憆憇憈憉惫憋憌憍憎憏
6190怜凭愦憓憔憕憖憗憘憙惮憛憜憝憞憟
61a0憠憡憢憣愤憥憦憧憨憩憪悯憬憭怃憯
61b0憰憱宪憳憴憵忆憷憸憹憺憻憼憽憾憿
61c0懀懁懂懃懄懅懆恳懈应懊懋怿懔懎懏
61d0懐懑懒懓懔懕懖懗懘懙懚懛懜懝懞怼
61e0懠懡懢懑懤懥懦懧恹懩懪懫懬懭懮懯
61f0懰懱惩懳懴懵懒怀悬懹忏懻惧懽慑懿
6200恋戁戂戃戄戅戆戇戈戉戊戋戌戍戎戏
6210成我戒戓戋戕或戗战戙戚戛戜戝戞戟
6220戠戡戢戣戤戥戦戗戨戬截戫戬戭戮戯
6230战戱戏戳戴戵户户戸戹戺戻戼戽戾房
6240所扁扂扃扄扅扆扇扈扉扊手扌才扎扏
6250扐扑扒打扔払扖扗托扙扚扛扜扝扞扟
6260扠扡扢扣扤扥扦执扨扩扪扫扬扭扮扯
6270扰扱扲扳扴扵扶扷扸批扺扻扼扽找承
6280技抁抂抃抄抅抆抇抈抉把抋抌抍抎抏
6290抐抑抒抓抔投抖抗折抙抚抛抜抝択抟
62a0抠抡抢抣护报抦抧抨抩抪披抬抭抮抯
62b0抰抱抲抳抴抵抶抷抸抹抺抻押抽抾抿
62c0拀拁拂拃拄担拆拇拈拉拊抛拌拍拎拏
62d0拐拑拒拓拔拕拖拗拘拙拚招拜拝拞拟
62e0拠拡拢拣拤拥拦拧拨择拪拫括拭拮拯
62f0拰拱拲拳拴拵拶拷拸拹拺拻拼拽拾拿
6300挀持挂挃挄挅挆指挈按挊挋挌挍挎挏
6310挐挑挒挓挔挕挖挗挘挙挚挛挜挝挞挟
6320挠挡挢挣挤挥挦挧挨挩挪挫挬挭挮振
6330挰挱挲挳挴挵挶挷挸挹挺挻挼挽挟挿
6340捀捁捂捃捄捅捆捇捈捉捊捋捌捍捎捏
6350捐捑捒捓捔捕捖捗捘捙捚捛捜捝捞损
6360捠捡换捣捤捥捦捧舍捩捪扪捬捭据捯
6370捰捱卷捳捴捵捶捷捸捹捺捻捼捽捾捿
6380掀掁掂扫抡掅掆掇授掉掊掋掌掍掎掏
6390掐掑排掓掔掕掖掗掘挣掚挂掜掝掞掟
63a0掠采探掣掤接掦控推掩措掫掬掭掮掯
63b0掰掱掲掳掴掵掶掷掸掹掺掻掼掽掾掿
63c0拣揁揂揃揄揅揆揇揈揉揊揋揌揍揎描
63d0提揑插揓揔揕揖揗揘揙扬换揜揝揞揟
63e0揠握揢揣揤揥揦揧揨揩揪揫揬揭挥揯
63f0揰揱揲揳援揵揶揷揸背揺揻揼揽揾揿
6400搀搁搂搃搄搅搆搇搈搉搊搋搌损搎搏
6410搐搑搒搓搔搕摇捣搘搙搚搛搜搝搞搟
6420搠搡搢搣搤搥搦搧搨搩搪搫搬搭搮掏
6430搰搱搲搳搴搵抢搷搸搹携搻搼搽搾搿
6440捂摁摂摃摄摅摆摇摈摉摊摋摌摍摎摏
6450摐掴摒摓摔摕摖摗摘摙摚摛掼摝摞搂
6460摠摡摢摣摤摥摦摧摨摩摪摫摬摭摮挚
6470摰摱摲抠摴摵抟摷摸摹摺掺摼摽摾摿
6480撀撁撂撃撄撅撆撇捞撉撊撋撌撍撎撏
6490撑撑撒挠撔撕撖撗撘撙捻撛撜撝撞挢
64a0撠撡撢掸撤拨撦撧撨撩撪抚撬播撮撯
64b0撰撱扑揿撴撵撶撷撸撹撺挞撼撽挝捡
64c0擀拥擂擃掳擅擆择擈擉击挡擌操擎擏
64d0擐擑擒擓担擕擖擗擘擙据擛擜擝擞擟
64e0挤擡擢擣擤擥擦擧擨擩擪擫拟擭擮摈
64f0拧搁掷擳扩擵擶撷擸擹摆擞撸擽扰擿
6500攀攁攂攃摅攅撵攇攈攉攊攋攌攍攎拢
6510攐攑攒攓拦攕撄攗攘搀攚撺携摄攞攟
6520攠攡攒挛摊攥攦攧攨攩搅攫揽攭攮支
6530攰攱攲攳攴攵收考攸改攺攻攼攽放政
6540敀敁敂敃敄故敆敇效敉敊敋敌敍敎敏
6550敐救敒敓敔敕敖败叙教敚敛敜敝敞敟
6560敠敡敢散敤敥敦敧敨敩敪敫敬敭敮敯
6570数敱敲敳整敌敶敷数敹敺敻敼敽敾敿
6580斀斁敛毙斄斅斆文斈斉斊斋斌斍斎斏
6590斐斑斒斓斔斓斖斗斘料斚斛斜斝斞斟
65a0斠斡斢斣斤斥斦斧斨斩斪斫斩断斮斯
65b0新斱斲斳斴斵斶断斸方斺斻於施斾斿
【软件逆向】带壳带反调试找flag教程(VMProtect3.0+X64dbg+ScyllaHide) 【软件逆向】带壳带反调试找flag教程(VMProtect 3.0+X64dbg+ScyllaHide) 阅读详情

相关推荐

EBS开发_创建AP付款

--以下代码于20181002在Tony环境测试通过 /* BEGIN   --mo_global.init('SQLAP');   apps.fnd_global.apps_initialize(user_id =&gt; 1110, resp_id =&gt; 50597, resp_appl_id =&gt; 20003);   --mo_global.set_policy_context(...

蜗牛先生快跑的博客 4766

JavaScript charCodeAt() 方法

方法是 JavaScript 字符串对象的一个方法,它用于返回给定位置的字符的 Unicode 编码值(整数)。Unicode 编码是一个标识字符的数字,它包含了世界上几乎所有字符的映射,包括常见字符、特殊字符和表情符号。方法通常用于处理字符串中的字符,以便执行各种文本操作,比如排序、查找、比较等。返回字符 "H" 的 Unicode 编码值,即 72。,因为它无法找到指定位置的字符。超出了字符串的长度,

wqzbxh的博客 3735

camera 知识速查

本文总结了Camera开发中的常见问题排查方法和关键技术点。主要内容包括:I2C/MIPI不通的排查步骤、时序问题分析方法、Sensor/AF/Flash/PDAF的Bring Up流程、OTP调试方法、PDAF原理及调试、CTS/ITS问题解决思路、AE震荡解决方案、Systrace性能分析方法、Flicker产生原理、Tombstone问题定位等。还涉及V4L2框架解析、问题定位分层方法、Sensor Setting注意事项、时钟信号概念、第三方应用卡顿排查、大光圈概念、Monkey测试方法。

qq_41665131的博客 783

charCodeAt() 方法了解和用法&unicode编码表

前言:最近在看一些算法题,发现有时候借用到charCodeAt方法,所以趁此机会来学习一下(●ˇ∀ˇ●)MDN的解释:W3C的解释:附链接:https://blog.youkuaiyun.com/fedawn/article/details/7307993

TanMengyi的博客 5711

迪文串口屏开发环境搭建全流程:从DGUS Tool到串口联调

串口屏作为嵌入式人机交互的核心组件,通过串口通信实现主控MCU与显示终端的指令交互。其工作原理基于变量地址映射,主控读写VP地址即可驱动屏上控件,兼具低功耗与高稳定性。在工业控制、医疗设备及智能家居面板等场景中,串口屏能显著降低开发门槛与硬件成本。迪文屏凭借DGUS Tool上位机与自定义串口协议,成为主流选择。掌握DGUS Tool版本匹配、串口驱动安装及VP地址规划,是快速搭建开发环境的关键。

weixin_33937499的博客 603

保姆级教程:在Windows 11上用VSCode和Conda搞定Depth-Anything-3(含常见报错修复)

本文提供在Windows 11系统上使用VSCode和Conda配置Depth-Anything-3的完整教程,涵盖环境搭建、依赖安装、常见报错修复及深度图生成实战。特别针对CUDA与PyTorch版本匹配、Hugging Face镜像加速等关键问题提供解决方案,帮助开发者高效实现计算机视觉中的深度估计应用。

weixin_30338481的博客 346

Unicode

Unicode(统一码、万国码、单一码)是计算机科学领域里的一项业界标准,包括字符集、编码方案等。Unicode 是为了解决传统的字符编码方案的局限而产生的,它为每种语言中的每个字符设定了统一并且唯一的二进制编码,以满足跨语言、跨平台进行文本转换、处理的要求。1990年开始研发,1994年正式公布。 起源 因为计算机只能处理数字,如果要处理文本,就必须先把文本转换为数字才能处理。最早的计算...

Daihao_Dong的专栏 8561

Arduino四足开源机器猫-Opencat(导航贴)

本内容由我和小伙伴共同编写,未经授权,谢绝转载! 1.项目介绍 2.组装调试教程 (一)Opencat-F (1)资料地址(包含程序代码&&3D打印图纸): 链接:https://pan.baidu.com/s/1AcVA5jSiOSzRKqEQAomrTA 提取码:szfx (2) (二)Opencat-B (1)组装调试 (2)组装调试注意事项 (3)添加新技能 3.编程 ...

qqliuzhitong的博客 4171

charCodeAt()和charAt()的使用及区别

charCodeAt() 方法可返回指定位置的字符的 Unicode 编码。这个返回值是 0 - 65535 之间的整数。 语法:stringObject.charCodeAt(index) index 必需。表示字符串中某个位置的数字,即字符在字符串中的下标。 ASCII码表: 详情表见:百度ASCII表 charAt() 方法可返回指定位置的字符。 stringObject.charAt(index) index 必需。表示字符串中某个位置的数字,即字符在字符串中的下标。 注释:字符串中第一个字符的下

TanMengyi的博客 4465

实操微信支付,适合第一次接通微信支付的同学

我的实际操作命令如下:就会生成图3中多出来的file文件夹,/Users/camel/cert/xxxxxx_cert/file/wechatpay_5A4xxxxxxxxxx9.pem,wechatpay_xxxxx5A4849E9.pem就是微信支付平台证书,也是程序真正需要的。•注意:我的操作说明,我是把下载好的 CertificateDownloader.jar 文件,放在了解压证书的目录里(图3)。//下面的静态参数要仔细看下面的解释,否则只会调用别人写好的方法,压根学不会0-1接入微信支付。

wjianwei666的专栏 525

MoveIt 运动学、运动规划、混合规划、move_group

混合规划是运动规划方法的一个术语,它将异构运动规划器结合起来,以产生更稳健或反应更快的解决方案。这种通用方法在导航领域已经非常成熟,并在导航2等流行项目中成功实施。MoveIt 的混合规划架构结合了一对全局规划器和局部规划器,它们以不同的规划速度和问题范围并行、并发运行。全局规划器的任务是解决全局运动规划问题,这与 “感知-规划-行动 ”应用中使用的规划器非常相似。所使用的规划器算法应该是完整的,因此假定其计算时间相对较慢。此外,全局规划器不要求实时安全,这意味着无法保证规划器在特定期限内找到解决方案。

机器人控制与仿真应用 2131

charAt()方法和charCodeAt()方法—— 从字符串中选取一个字符.

charAt() 方法和charCodeAt () 方法用于选取字符串中某一位置上的单个字符。对于检查用户输入的有效性 ,这两个方法也是非常有用的。 charAt() 方法具有一个参数 :即所选取字符在字符串中的位置。charAt()方法的返回值就是该位置上的字符。字符串中字符的索引位置 从0 开始,因此,第一个字符的索引是0,第二个字符的索引 是1,依此类推。 例如,要选取一个字符串中最

huangliping1225的博客 1152

本地通知与健康数据的隐私保护方案

随着移动健康(mHealth)应用的普及,本地通知与健康数据的结合为用户提供了更加个性化的健康管理体验。然而,这种便利性也带来了严峻的隐私保护挑战。本文旨在探讨如何在移动应用中实现本地通知功能的同时,确保用户健康数据的隐私安全。本地通知与健康数据结合的技术架构隐私保护的核心技术方案具体算法实现与数学模型实际应用案例分析本文首先介绍背景知识和核心概念,然后深入探讨隐私保护的技术方案,包括算法原理和数学模型。接着提供实际代码实现和应用场景分析,最后讨论未来发展趋势和挑战。

移动开发前沿的博客 1309

js字符串的存储方式及方法charAt(),charCodeAt(),codePointAt()用法总结

JavaScript 内部,字符以 UTF-16 的格式储存,每个字符固定为2个字节。对于那些需要4个字节储存的字符(Unicode 码点大于0xFFFF的字符),JavaScript 会认为它们是两个字符。 1、charAt() 方法可返回指定位置的字符。 但是charAt()一次只能返回一个字节,但是不管是英文还是中文一个字符都是两个自己组成的(Unicode编码) str...

txwsmsm7023_的博客 3007

IEM模型,地表粗糙度模拟

利用微波反演土壤水分时候,利用IEM模型可以实现对随机地表的模拟

锂电池充电器电路设计 里面有电路

锂电池充电器电路设计 里面有电路 3.7V升压到5V电路设计。

charat转数字方法html,charAt()方法和charCodeAt()方法

charAt()方法和charCodeAt()方法—— 从字符串中选取一个字符charAt()方法和charCodeAt()方法用于选取字符串中某一位置上的单个字符。对于检查用户输入的有效性,这两个方法也是非常有用的。在第6章介绍HTML表单时,你将看到这两个方法的更多具体应用。charAt()方法具有一个参数:即所选取字符在字符串中的位置。charAt()方法的返回值就是该位置上的字符。字符串中...

weixin_30830161的博客 920

温度PID控制PLC程序

温度PID稳定控制程序,适用于欧姆龙PLC,对其他PLC也具有很大参考价值

charCodeAt() Unicode 编码 String 对象常用方法

charCodeAt()返回字符串第一个字符的 Unicode 编码的位置(用十进制数字表示) 语法: string.charCodeAt(index) string:字符串 index:位置 var str1 = "1234abc"; console.log(str1.charCodeAt(0)) 输出 49 这个49就是字符1在Unicode 编码表的位置用十进制表示 字符位置大于255...

qq_33002773的博客 1485

字符串charCodeAt()方法

Return the character code at the index i. Similar to charAt(), except it returns the Unicode 16-bit integer representing the character: 返回索引i处的字符代码。 与charAt()类似,除了它返回表示字符的Unicode 16位整数: 'Flavio'.cha...

cuk0051的博客 2729

【JS】charAt()、fromCharCode() 与 charCodeAt()介绍

JS-charAt()、fromCharCode() 与 charCodeAt()介绍

Pulse的博客 1816

JavaScript charCodeAt() 方法 与 charAt()方法

charCodeAt() 方法 charCodeAt() 方法可返回指定位置的字符的 Unicode 编码。这个返回值是 0 - 65535 之间的整数。 方法 charCodeAt() 与 charAt() 方法执行的操作相似,只不过前者返回的是位于指定位置的字符的编码,而后者返回的是字符子串。 Unicode码点范围为0到1114111。前128个Unicode码点的ASCII字符编码的...

bujiongdan的博客 565

js charcodeat java_[js] charAt()、charCodeAt()、fromCharCode()

String.prototype.charAt()str.charAt(index)返回字符串中指定位置的字符。字符串中的字符从左向右索引,第一个字符的索引值为 0,最后一个字符(假设该字符位于字符串 stringName 中)的索引值为 stringName.length - 1。如果指定的 index 值超出了该范围,则返回一个空字符串。var anyString = "Brave new w...

weixin_31833307的博客 529

JavaScript charAt() 方法 和 charCodeAt() 方法

定义和用法 方法 charCodeAt() 与 charAt() 方法执行的操作相似,只不过前者返回的是位于指定位置的字符的编码,而后者返回的是字符子串。 charCodeAt() 方法 返回的是位于指定位置的字符的编码 charCodeAt() 方法可返回指定位置的字符的 Unicode 编码。这个返回值是 0 - 65535 之间的整数。 语法: stringObject.c...

_夜渐凉 1508

UNICODE编码与字符互转

将UNICODE编码输出为汉字,采用“\u××××”的方法。将汉字转化为unicode编码使用字符串函数charCodeAt(index)的方法。输出为16进制则使用Number.toString(16)的方法。提取字符则使用字符串函数charAt(index)的方法 \u××××:将将UNICODE编码输出为汉字; charCodeAt(index):将汉字转化为unicode编码 Number.toString(16):以16进制输出 charAt(index):提取字符 // 将UNICOD

acflair的专栏 2528

charCodeAt() 和charAt()

charAt() 方法可返回指定位置的字符。 charCodeAt() 方法可返回指定位置的字符的 Unicode 编码。这个返回值是 0 - 65535 之间的整数。 方法 charCodeAt() 与 charAt() 方法执行的操作相似,只不过前者返回的是位于指定位置的字符的编码,而后者返回的是字符子串。 注释:字符串中第一个字符的下标是 0。 转载于:https://www.cnbl...

weixin_30800807的博客 697

javascript charCodeAt() 和 fromCharCode()

1. charCodeAt () 将字符转换为代码; var str="Hello world!" document.write(str.charCodeAt(1))            'cjk': [ 'u4e00', 'u9fa5' ],

hongweigg的专栏 5899
上一篇: word-wrap、word-break、white-space、word-spacing、text-overflow、overflow 的联系与区别
下一篇: px、em、rem、rpx 用法 与 区别
function__
博客等级 码龄10年 99粉丝 39原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值