在vbscript中有个函数ASC(),是将string转换为ASI码的,在javascript中有此功能的函数吗? alert("A".charCodeAt(0)); //对于单字节的字符正确 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 charAt返回一个整数,代表指定位置上字符的 Unicode 编码。我自己找到了:unEscape ,这个函数是好东西 escape() 将字符转变为ASCII码,并以十六进制表示 unescape() 把十六进制ASCII码转变为字符 charAt 返回指定索引位置处的字符。unEscape => unescape 注意大小写。 写代码是严谨的, 不可以敷衍了事. escape() 并不是将字符转变成 ASCII 码, 而是 Unicode, 只不过在小于 255 的情况下 字符的ASCII码等于 Unicode 值而已, charCodeAt 返回的也是 Unicode, 所说只对单字节字符正确 to:meizz,你说的太对了,我用escape()得到了中文字的十六进数,我现在是想得到这些中文字的首字母,我该怎么办? execScript("strAsc = ASC('"+ str +"')", "vbscript"); //在JS里用VBS的函数 在javascript里面就没有办法了吗? 咳, meizz都不说话了,估计没戏了 在JS里确实只能得到Unicode 码而得到不ASCII码值. 上面那个JS调用VBS函数也属无奈之举. 实际上我是想用javascript编写一个返回根据首字母检索汉字的函数,首先要得到输入名字的更各字的首字母,所以……………… 这个建议你用VBS来做, 我这里就有一个VBS里的汉字ASCII码与拼音对应的字典, 基本上可以根据你输入的汉字标注成拼音, 这个问题在我以前做的一个表格内容排序里碰到过, 所以才会有上面那个解答. 是这样的,我查找Jscript的语言参考,没有execScript函数,不知道为什么! execScript 不是 Jscript 的语法, 是DHTML(动态网页编程)里的东西. 很奇怪,我调试程序的时候,是认识execScript函数的,难道是我的语言参考太老了〉? http://msdn.microsoft.com/workshop/author/dhtml/reference/methods.asp 哎,最后还是使用了execScript函数弄出来。多谢,真的感谢各位的帮忙。祝愿大家都过一个高兴的周末。 话题外:meizz:,你能仔细讲解一下ASCII码,Unicode ,GB2312之类的区别在哪里吗? 小弟不才,仅仅知道这么多:对于英文来说,ascii码 0-127就足以代码所有字符,对于中文而言,则必须使用两个字节(byte)来代表一个字符,具第一个字节必须大于127(所以我们有许程序判断中文都是以ascii码大于127作为条件) 以上用两个字节来表示一个中文的方式,在习惯上称为双字节(即DBCS: Double-Byte Character Set),而相对之下,英文的字符码就称为单字节SBCS(Single-Byte Character Set)。 虽然双字节(DBCS)足以解决中英文字符混合使用情况,但对于不同字符系统而言,必须经过字符码转换,非常麻烦。例如:中英文混合情况,日文,韩文等等。 为解决这个问题,Apple, Xerox, Microsoft, IBM, Novell, Borland...很多公司联合起来制订了一套可以适用于全世界所有国家的字符码,就称为Unicode Unicode的特点是: 不管哪一国的字符码均以两个Byte表示,例如"A"在Unicode则是16进制 41和00的组合,即4100,高位41(转换为Ascii码即是65=A), Windows NT/2000以Unicode来表示字符集,例如你可以看到MS SQL Server中产生的SQL文件可以选择是以Unicode来保存还是以普通格式来保存,如果你以Unicode保存,则在95/98平台许多软件均无法正确读出其格式。 js查找字符中url 求大侠指点啊 求教1個REGEXP負向預查的問題 请教如何在JS中调用后台方法 这样对比两个数组中是否有相同值 为什么不行??很简单的 我晕~~~ 怎么区分drag和click事件 对fck熟悉的进 什么在html文档中插入的javascript程序段不执行 Javascript 怎样保存然后读取 Cookies("asp")("ok"),谢谢~~ 我记得有个“关不掉的窗口”的脚本 谁知道怎么使用window.scroll这个函数,我想使滚动条在窗口出现的时候就自动下移到最下面 通用数据校验函数 谁能给我一本htc的权威的书.或参考手册.
unEscape ,这个函数是好东西
unescape() 把十六进制ASCII码转变为字符
unEscape => unescape 注意大小写。 写代码是严谨的, 不可以敷衍了事.
你说的太对了,我用escape()得到了中文字的十六进数,我现在是想得到这些中文字的首字母,我该怎么办?
对于英文来说,ascii码 0-127就足以代码所有字符,对于中文而言,则必须使用两个字节(byte)来代表一个字符,具第一个字节必须大于127(所以我们有许程序判断中文都是以ascii码大于127作为条件)
以上用两个字节来表示一个中文的方式,在习惯上称为双字节(即DBCS: Double-Byte Character Set),而相对之下,英文的字符码就称为单字节SBCS(Single-Byte Character Set)。
虽然双字节(DBCS)足以解决中英文字符混合使用情况,但对于不同字符系统而言,必须经过字符码转换,非常麻烦。例如:中英文混合情况,日文,韩文等等。
为解决这个问题,Apple, Xerox, Microsoft, IBM, Novell, Borland...很多公司联合起来制订了一套可以适用于全世界所有国家的字符码,就称为Unicode
Unicode的特点是:
不管哪一国的字符码均以两个Byte表示,例如"A"在Unicode则是16进制 41和00的组合,即4100,高位41(转换为Ascii码即是65=A),
Windows NT/2000以Unicode来表示字符集,例如你可以看到MS SQL Server中产生的SQL文件可以选择是以Unicode来保存还是以普通格式来保存,如果你以Unicode保存,则在95/98平台许多软件均无法正确读出其格式。