在javascript判断两个变量值是否相等,可以使用 ==(等同)操作符 或者 ===(恒等)操作符<br><br> == 操作符<br>“等同”操作符,简单判断2个变量值是否相等,变量类型不一致时,会做类型转换,即忽略变量的类型进行比较<br>例子1<br>var str1 = "123456" // 字符串<br>var str2 = "123456" // 字符串<br>alert(str1==str2) // 打印出 true,即相等<br>例子2<br>var str1 = 123456 // 整型<br>var str2 = "123456" // 字符串<br>alert(str1==str2) // 打印出 true,即相等<br>差别:<br>在例子1中,2个变量都是字符串类型(因为有引号),所以比较相等,打印出true;<br>在例子2中,变量str1是整型,但是在做==比较时,javascript 发现 2个变量类型不一致,先做了类型转换(调用str1的tostring方法,把str1转成字段串),再比较2者,因此值也相等,打印出true;<br><br> 2. === 操作符<br> “恒等”操作符,先比较2个变量类型是否一致,不一致返回false,一致时,再比较2个变量的值是否相等<br>例子1<br>var str1 = "123456" // 字符串<br>var str2 = "123456" // 字符串<br>alert(str1==str2) // 打印出 true,即相等<br>例子2<br><br>var str1 = 123456 // 整型<br>var str2 = "123456" // 字符串<br>alert(str1==str2) // 打印出 false,即不相等<br>差别:<br>在例子1中,2个变量都是字符串类型,且值都相等,因此打印出true;<br>在例子2中,变量1是整型,变量2是字符串,类型不相等,因此打印出false 两个字符串匹配一般使用“==”或者“===”判断,其不同是:
1.==
equality
等同,===
identity
恒等。
2.==,
两边值类型不同的时候,要先进行类型转换,再比较。
3.==,不做类型转换,类型不同的一定不等。
①“==”匹配:
不同类型间比较,==之比较“转化成同一类型后的值”看“值”是否相等var
str1="a"
var
str2="b"
var
str1="a"
if(str1
==
str2)alert("相等")
else
alert("不等")
②"==="匹配:
===如果类型不同,其结果就是不等var
str2="1"
var
str2="b"
var
str1="a"
if(str1
===
str2)alert("相等")
else
alert("不等")
③mach对象比较:
var
str1='123'
var
str2='231'
function
M(str1,str2){
function
sort(s){return
s.match(/\d/g).sort()+''
}
return
sort(str1)==sort(str2)
}
alert(
M(str1,str2)?'相等':'不等')
④equals方法,如:
if(pwd1.equals(pwd2))
{
...}