浅谈JavaScript字符集


Posted in Javascript onMay 22, 2014

JavaScript是区分大小写的:

关键字、变量、函数名、和所有的标识符都必须采用一致的大小写(一般我们都是写成小写的),这样和当初学C#的多样式写法有很大的区别。

比如:(这里以变量str和Str为例)

var str='abc';
var Str='ABC';
alert(str);//输出abc

浅谈JavaScript字符集

假如str与Str为同一变量,那么alert(str);,输出的结果应为为ABC而不是如上图所示abc。这恰恰说明:JavaScript是区分大小写的。

Unicode转义序列

Unicode字符集的出现是为了弥补ASCII码只能表示128个字符的限制,而日常中我们想显示汉字和日文的话,显然ASCII是不可能的了。所以说Unicode是ASCII和Latin-1的超集。首先,JavaScript程序都是用Unicode字符集编写而成的,但在一些计算机硬件和软件里根本无法完整地显示或者输入Unicode字符全集(比如:é),为了解决这一现象JavaScript定义了一种特殊序列,这种序列使用6个ASCII字符来代表任意16位Unicode内码,这种特殊序列统称为Unicode转义序列,它均以\u为前缀,其后跟随4个十六进制数

比如:

var str='caf\u00e9';
var Str='café';
alert(Str+' '+str);// 可以看出显示都是一样的效果。
alert (Str===str);//输出true

浅谈JavaScript字符集浅谈JavaScript字符集

但我们应该注意一点,Unicode是允许多种方法对同一字符进行编码的,用上述的é转义的例子来说明:

é:

1.可以使用Unicode字符\u00E9表示

2.亦可用e\u0301(语调字符)表示

var str='caf\u00e9';
var Str='cafe\u0301';
alert(str+' '+Str); //如下图所示,Str和str所输出的结果都是一样的
alert(Str===str); //结果是一样的,可它们的二进制编码表示根本不一样,所以输出false

虽然显示在文本编辑器上的结果是一样的,可是它们的二进制编码表示根本不一样,而编程语言最终都会转化为本地平台的计算机机械码(二进制编码),计算机只能通过对二进制编码的比较才能得知结果,所以它们比较最终的结果只能是false

所以这正是 “Unicode是允许多种方法对同一字符进行编码的”最好的解释,因为Unicode标准为所有字符定义了一个首选的编码格式以便于将文本转化成统一格式的Unicode转义序列以合适比较

再次以é为例:

比较facé与café中的é是否相同?

facé与café中的é都转化为\u00E9或者都转化为e\u0301,才能比较facé与café中的é

Javascript 相关文章推荐
关于二级域名下使用一级域名下的COOKIE的问题
Nov 07 Javascript
js中top/parent/frame概述及案例应用
Feb 06 Javascript
jquery 设置元素相对于另一个元素的top值(实例代码)
Nov 06 Javascript
14个有用的Jquery技巧分享
Jan 08 Javascript
js实现键盘上下左右键选择文字并显示在文本框的方法
May 07 Javascript
JavaScript必知必会(三) String .的方法来自何方
Jun 08 Javascript
AngularJS实践之使用NgModelController进行数据绑定
Oct 08 Javascript
针对后台列表table拖拽比较实用的jquery拖动排序
Oct 10 Javascript
功能强大的jquery.validate表单验证插件
Nov 07 Javascript
原生JS实现的多个彩色小球跟随鼠标移动动画效果示例
Feb 01 Javascript
VUE v-for循环中每个item节点动态绑定不同函数的实例
Sep 26 Javascript
微信小程序map组件结合高德地图API实现wx.chooseLocation功能示例
Jan 23 Javascript
对new functionName()定义一个函数的理解
May 22 #Javascript
教你如何使用PHP输出中文JSON字符串
May 22 #Javascript
JS完整获取IE浏览器信息包括类型、版本、语言等等
May 22 #Javascript
JS常用表单验证方法总结
May 22 #Javascript
一个Action如何调用两个不同的方法
May 22 #Javascript
选择复选框按钮置灰否则按钮可用
May 22 #Javascript
JavaScript获取路径设计源码
May 22 #Javascript
You might like
windows环境下php配置memcache的具体操作步骤
2013/06/09 PHP
php获取表单中多个同名input元素的值
2014/03/20 PHP
Fedora下安装php Redis扩展笔记
2014/09/03 PHP
PHP语法小结之基础和变量
2015/11/22 PHP
php array_key_exists() 与 isset() 的区别
2016/10/24 PHP
Ext中下拉列表ComboBox组件store数据格式用法介绍
2013/07/15 Javascript
node.js [superAgent] 请求使用示例
2015/03/13 Javascript
javascript实现英文首字母大写
2015/04/23 Javascript
通过jquery-ui中的sortable来实现拖拽排序的简单实例
2016/05/24 Javascript
Angular.js中处理页面闪烁的方法详解
2017/03/09 Javascript
微信小程序五星评分效果实现代码
2017/04/06 Javascript
Map.vue基于百度地图组件重构笔记分享
2017/04/17 Javascript
微信小程序获取用户openId的实现方法
2017/05/23 Javascript
关于Vue实现组件信息的缓存问题
2017/08/23 Javascript
使用JS中的Replace()方法遇到的问题小结
2017/10/20 Javascript
react-native 圆弧拖动进度条实现的示例代码
2018/04/12 Javascript
layui table 多行删除(id获取)的方法
2019/09/12 Javascript
在node环境下parse Smarty模板的使用示例代码
2019/11/15 Javascript
vuex实现购物车的增加减少移除
2020/06/28 Javascript
js异步接口并发数量控制的方法示例
2020/11/22 Javascript
[36:52]DOTA2真视界:基辅特锦赛总决赛
2017/05/21 DOTA
跟老齐学Python之一个免费的实验室
2014/09/14 Python
python实现证件照换底功能
2019/08/20 Python
python图形开发GUI库wxpython使用方法详解
2020/02/14 Python
python使用paramiko实现ssh的功能详解
2020/03/06 Python
Python with语句用法原理详解
2020/07/03 Python
Peter Alexander新西兰站:澳大利亚领先的睡衣设计师品牌
2016/12/10 全球购物
全球最大的在线橄榄球商店:Lovell Rugby
2018/05/20 全球购物
美国精油公司:Plant Therapy
2019/05/17 全球购物
澳大利亚在线高跟鞋商店:Shoe Me
2019/11/19 全球购物
预备党员的自我评价
2014/03/12 职场文书
教师工作失职检讨书
2014/09/18 职场文书
小学教师自我剖析材料
2014/09/29 职场文书
2014年学生管理工作总结
2014/12/20 职场文书
oracle索引总结
2021/09/25 Oracle
Android学习之BottomSheetDialog组件的使用
2022/06/21 Java/Android