javascript编码,javascript编码规范
js中如何设置编码格式
两种方法:
创新互联公司是一家集网站建设,博山企业网站建设,博山品牌网站建设,网站定制,博山网站建设报价,网络营销,网络优化,博山网站推广为一体的创新建站企业,帮助传统企业提升企业形象加强企业竞争力。可充分满足这一群体相比中小企业更为丰富、高端、多元的互联网需求。同时我们时刻保持专业、时尚、前沿,时刻以成就客户成长自我,坚持不断学习、思考、沉淀、净化自己,让我们为更多的企业打造出实用型网站。
1、可以在使用script标签时指定。如: script type="text/javascript" src="myscripts.js" charset="UTF-8"/script
2、以DW为例,工具栏里点击编辑,找到‘首选参数’点击,找到‘新建文档’点击进去就可以看到修改编码格式了。
资料拓展
(1)JavaScript一种直译式脚本语言,是一种动态类型、弱类型、基于原型的语言,内置支持类型。它的解释器被称为JavaScript引擎,为浏览器的一部分,广泛用于客户端的脚本语言,最早是在HTML(标准通用标记语言下的一个应用)网页上使用,用来给HTML网页增加动态功能
(2)在1995年时,由Netscape公司的Brendan Eich,在网景导航者浏览器上首次设计实现而成。因为Netscape与Sun合作,Netscape管理层希望它外观看起来像Java,因此取名为JavaScript。但实际上它的语法风格与Self及Scheme较为接近。
(3)为了取得技术优势,微软推出了JScript,CEnvi推出ScriptEase,与JavaScript同样可在浏览器上运行。为了统一规格,因为JavaScript兼容于ECMA标准,因此也称为ECMAScript。
(资料来源:百度百科:js)
JS对字符串编码的几种方式使用
在客户端中,要对字符串编码,可以采用:escape();encodeurl();encodeURIComponent();下面我们就来具体讲解下这几个方法。
函数
描述
encodeURI()
把字符串编码为
URI
encodeURIComponent()
把字符串编码为
URI
组件
escape()
对字符串进行编码
上面是查询来自w3school的资料。那么三者之间有什么区别呢,请容我测试测试。
代码如下:
var
str
=
";attr=456area=中国";
console.log(encodeURI(str));
console.log(encodeURIComponent(str));
console.log(escape(str));
打印结果如下:
代码如下:
;attr=456area=%E4%B8%AD%E5%9B%BD
http%3A%2F%2Flocalhost%3A8080%2FProduct%2Findex%3Fid%3D123%26attr%3D456%26area%3D%E4%B8
%AD%E5%9B%BD
http%3A//localhost%3A8080/Product/index%3Fid%3D123%26attr%3D456%26area%3D%u4E2D%u56FD
可以看出,
encodeURI不会对:/?等uri中起分割作用的字符进行编码;
encodeURIComponent则会。
观察escape则发现,:?都被转码了,而/没有,w3school解释是,escape函数会对ascii码中字母、数字及符号(
*
@
-
_
+
.
/
)之外的所有字符进行编码。
另外,我们可以看出escape对汉字“中国”编码后结果与前两者不同。W3SCHOOL也建议不使用该方法,用前两者代替。
以上所述就是本文的全部内容了,希望对大家学习javascript能够有所帮助。
JavaScript的内部字符编码是UCS-2还是UTF-16
UTF-16是UCS-2的扩展。JavaScript引擎内部是自由的使用UCS-2或者UTF-16。大多数引擎使用的是UTF-16,无论它们使用什么方式实现,它只是一个具体的实现,这不将影响到语言的特性。
JavaScript中各种编码解码函数的区别和注意事项
大家在使用JS提交数据时,尤其是中文的时候,经常会需要将要提交的字符串进行URL编码。在JS中对字符串进行URL编码有好几种方
法,encodeURI,encodeURIComponent,还有escape。在我看到的很多代码中escape这个函数用的最多,不过这个函数却
是不推荐使用的。下面我们来分别看看这几个函数:
encodeURI:对指定的字符串进行URL编码,不包括 : # / \ = 这些URL中的关键字符。
encodeURIComponent:对字符串中的字符进行编码,包括URL中的特殊字符。
escape:这个是JS比较早期版本的函数,这个函数中处理unicode字符的时候会有些问题。
代码如下:
复制代码 代码如下:
var url = "; amp;b=呵呵";
var encodedUrl = encodeURI(url);
alert(encodedUrl); //输出:;b=%E5%91%B5%E5%91%B5
encodedUrl = encodeURIComponent(url);
alert(encodedUrl); //输出:http%3A%2F %2F
alert(escape(url)); //输出:http%3A//
如上所示,escape函数中处理中文字符的时候,都会转换成%uxxxx这种形式,显然这个和URL编码的格式不一样,而
encodeURIComponent函数编码是最彻底的,如果没有特殊需要的话,encodeURIComponent这个函数是比较常用的,当然,也
许我们使用escape也不会有什么问题,也许你的服务端语言也能够正常的解析出来,不过这个函数在处理unicode字符的时候还不是很标准,所以这里
建议大家使用encodeURIComponent和decodeURIComponent这对函数来对字符串进行URL编码和解码。
JavaScript怎么设置编码格式
可以在使用script标签时指定charset 属性,规定在外部脚本文件中使用的字符编码。
如果外部文件中的字符编码与主文件中的编码方式不同,就要用到 charset 属性。
默认的字符编码是 ISO-8859-1。
如: script type="text/javascript" src="myscripts.js" charset="UTF-8"/script
注意:只有在使用引入外部js文件时,可以声明编码格式,对行内脚本无效;
当前文章:javascript编码,javascript编码规范
链接分享:http://azwzsj.com/article/phgdcs.html