1. js脚本怎么转码
可以使用js自带的转码方法escape(),encodeURI()和encodeURIComponent()。
下面是详细介绍:
Js中escape(),encodeURI()和encodeURIComponent()使用和比较:
escape方法以Unicode格式返回一个包含传入参数内容的string类型的值。Escape方法会将传入参数中所有的空格、标点符号、重音字符以及其它任何非ASCII字符替换为%xx的编码形式,其中xx与其所表示的字符的16进制数表示形式相同。如空格字符的16进制表示形式为0x20,则此时xx应为20,即escape(‘’)返回“%20”。
escape和unescape方法能够帮助你编码和解码字符串。escape方法对于ISOLatin字符集中的字符组成的参数,返回其16进制编码。相对应的,unescape方法则能将16进制编码形式的参数转化成为其ASCII码形式。
encodeURI方法返回一个经过编码的URI。如果将encodeURI方法的编码结果传递给decodeURI方法作参数,则能得到原始的未编码的字符串。需要注意到是encodeURI方法不编码如下字符":","/",";",and"?"。如果想要编码这些字符,请使用encodeURIComponent方法。
encodeURIComponent方法返回一个编码过的URI。如果将encodeURIComponent方法的编码结果传递给encodeURIComponent方法作参数,则能得到原始的未编码的字符串。因为encodeURIComponent方法会编码所有的字符,所以如果待编码的字符串是用来表示一个路径(如/dir1/dir2/index.htm)时,就一定要小心使用了。‘/’符号会被其编码之后,将不再是一个有效的路径标识符,所以不能被web服务器正确地识别。当字符串包含一个单独的URIcomponent(指?后面的请求参数)的时候,请使用此方法。
escape()不编码的字符:@*/+
encodeURI()不编码的字符:~!@#$&*()=:/,;?+"
encodeURIComponent()不编码的字符:~!*()''
2. JS代码UNICODE转UTF8看不懂解释一下谢谢
1: UTF stands for UCS Transformation Format, where UCS stands for Universal Character Set.
2:utf-8 是unicode 这种编码的储存格式(以一到三个字节“存放”一个字符--理论上可以达到六个)
3: unicode 是编码。Unique, Universal, and Uniform character encoding--它在概念上与ISO 10646标准相对应 (目前版本UCS-2以两字节‘描述’一个字符)
4: 根据上面所述:可以根据unicode/UCS-2的编码特性(与ASCII编码在字面上“相等”)得知将一个 ASCII 或 Latin-1 的文件转换成 UCS-2 只需简单地在每个 ASCII 字节前插入 0x00。反之去处0x00。
5:而一个unicode格式的文本要转为utf-8格式的文本,那么根据下图所示:
U-00000000 - U-0000007F: 0xxxxxxx
U-00000080 - U-000007FF: 110xxxxx 10xxxxxx
U-00000800 - U-0000FFFF: 1110xxxx 10xxxxxx 10xxxxxx
U-00010000 - U-001FFFFF: 11110xxx 10xxxxxx 10xxxxxx 10xxxxxx
U-00200000 - U-03FFFFFF: 111110xx 10xxxxxx 10xxxxxx 10xxxxxx 10xxxxxx
U-04000000 - U-7FFFFFFF: 1111110x 10xxxxxx 10xxxxxx 10xxxxxx 10xxxxxx 10xxxxxx
==================================================================
以上是对一些概念的阐述,
而下面这几个语句/表达式的解释:
<0x80 //逻辑判断,字面意思:判断是否小于0x80,(即判断是否为一个ascii字符)
&0xff //位运算 ,字面:将相应的位置“0”,(按照utf-8的格式设置“前缀”/“前导”)
3. js中有没有把十六进制数转换成Unicode字符的函数
根本不用你编写十六进制转换unicode
document.writeln(escape("你好"))
再给你几个函数encodeURI,encodeURIComponent unescape 方法
这些方法足够你完成版中文参数传权递
4. js 国际化一些语言包中 汉字代码 的问题
unicode编码,直接输出后就是汉字,不需要额外解码。摘自网络一个编码解码方法:
<scripttype="text/javascript">
varGB2312UnicodeConverter={
ToUnicode:function(str){
returnescape(str).toLocaleLowerCase().replace(/%u/gi,'\u');
}
,ToGB2312:function(str){
returnunescape(str.replace(/\u/gi,'%u'));
}
};
varstr='上海',unicode;
document.write(str+'<br/>');
unicode=GB2312UnicodeConverter.ToUnicode(str);
document.write('汉字转换为Unicode代码:'+unicode+'<br/><br/>');
document.write('Unicode代码转换为汉字:'+GB2312UnicodeConverter.ToGB2312(unicode));
</script>
你可以用这个方法编码或解码后就可以修改原来的文字了。
5. js格式怎么转换成正常汉字显示呢\u6e05\u534e\u5927\u5b66
不用转换,直接用,就可以了。
可以试试
var a ='\u5a92\u5927\u5b66';
alert(a);
document.body.innerHTML=a
不论是alert,还是直接放到innerHTML里,都可以用的,前提是要通过脚本来使用。
我记得好像是说javascript本身就是unicode编码,而这种'\u5a92\u5927\u5b66'形式恰好就是unicode的编码形式,还有形式的呢。
6. js 如何给中文转码
需要准备的材料分别有:电脑、html编辑器、浏览器。
1、首先,打开html编辑器,版新建html文件,例如:index.html。
7. 用JS如何把utf8转换成GBK的字符编码
java不同编码之间进行转换,都需要使用unicode作为中转。
以utf-8转gbk为例,示例代码版如下:
String t = "这是权一个字符串aaa111";
String utf8 = new String(t.getBytes( "UTF-8"));
System.out.println(utf8);
String unicode = new String(utf8.getBytes(),"UTF-8");
System.out.println(unicode);
String gbk = new String(unicode.getBytes("GBK"));
System.out.println(gbk);