如何在JS中中文字符串如何比较

 我来答
育知同创教育
2017-01-12 · 百度知道合伙人官方认证企业
育知同创教育
1【专注:Python+人工智能|Java大数据|HTML5培训】 2【免费提供名师直播课堂、公开课及视频教程】 3【地址:北京市昌平区三旗百汇物美大卖场2层,微信公众号:yuzhitc】
向TA提问
展开全部
js里面比较中文字符串实际是比较中文字符串的unicode编码值!
第一个汉字的unicode编码是:19968 表示汉字“一”;
最后一个汉字的unicode编码是:40869 标识汉字“龥”(yu,四声);
开始和结束之间的unicode代码区间是计算机能打出来的所有汉字。
比较的话可以直接用运算符比较,例如:

var a="一";
var b="龥";
a>b //false;
a<b //true
a==b //false
a===b //false
//但是不能用“-”号,用“-”号js会尝试强转a变量的值为number,如果不能转成功会显示NaN,
//NaN <a href="https://www.baidu.com/s?wd=%E5%8A%A0%E5%87%8F%E4%B9%98%E9%99%A4&tn=44039180_cpr&fenlei=mv6quAkxTZn0IZRqIHckPjm4nH00T1d9nH6zuWT4mH6YuWfsnAm10ZwV5Hcvrjm3rH6sPfKWUMw85HfYnjn4nH6sgvPsT6KdThsqpZwYTjCEQLGCpyw9Uz4Bmy-bIi4WUvYETgN-TLwGUv3EnHRLP1nYP1TsPWfLPjbdP10zn0" target="_blank" class="baidu-highlight">加减乘除</a>结果都是NaN
//用“+”,js会优先执行拼接字符得到
a+b // "一龥"

实际计算机内部执行比较是有类似如下操作的:

var a="一";
var b="龥";
a.charCodeAt(0)>b.charCodeAt(0) // false
百度网友9db4e79
2017-01-12 · TA获得超过156个赞
知道答主
回答量:212
采纳率:0%
帮助的人:80.1万
展开全部
蕾不见经传鸭群闪亮湃
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式