JavaScript中字符串相等比较另类方法[实用]

在JavaScript中,如果让你不用"=="去比较两个字符串,你会用什么方法去实现?

JavaScript中没有专门用来对字符串相等进行比较的函数,但提供了一个查找子串的indexOf函数,它返回String 对象内第一次出现子字符串的字符位置。现有字符串A和B,假如A在B中第一次出现的字符位置为0,且B在A中第一次出现的字符位置也为0,那么我们可以断定这两个字符串是相等的,这是区分大小写的情况,不区分大小写的话,就先将字符串都转换成大写或者是小写,再进行查找比较。


(1)、区分大小写


<script type="text/javascript">
var str1="hello";
var str2="hello";
if(str1.indexOf(str2)==0 && str2.indexOf(str1)==0)
{
alert(str1+"="+str2);
}
</script>

(2)、不区分大小写【这个是最实用的比较方法,不管是什么类型,只要内容相同即可判断,省去一大堆繁杂的测试调试】

<script type="text/javascript">
var str1="hello";
var str2="Hello";
if(str1.toUpperCase().indexOf(str2)==0 && str2.toUpperCase().indexOf(str1)==0)
{
alert(str1+"="+str2);
}
</script>

实际上我们通常用"=="来比较两个字符串,Jscript手册参考
相等运算符 (==、!=)

如果两表达式的类型不同,则试图将它们转换为字符串、数字或 Boolean 量。
NaN 与包括其本身在内的任何值都不相等。
负零等于正零。
null 与 null 和 undefined 相等。
相同的字符串、数值上相等的数字、相同的对象、相同的 Boolean 值或者(当类型不同时)能被强制转化为上述情况之一,均被认为是相等的。
其他比较均被认为是不相等的。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值