平等之间有什么区别:
==
和严格的平等?
===
答案 0 :(得分:9)
===类似==,但数据类型未转换。因此,当且仅当表达式和的类型相等时,结果才是真实的。
例如:
var string1:String = "5";
var num:Number = 5;
然后string1 == num
为真,但string1 === num
为假。
因此,===通常被认为是“更严格”。请参阅:http://help.adobe.com/en_US/AS2LCR/Flash_10.0/help.html?content=00000686.html
答案 1 :(得分:3)
它更严格。它将检查不仅值而且类型匹配。例如,1 == true
将返回true,而1 === true
将返回false,因为它们具有不同的类型。
答案 2 :(得分:2)
==
测试非严格相等,而===
测试严格相等。严格的相等意味着比较表达式的数据类型必须匹配。
以下是documentation:
中的一些示例s1 = new String("5");
s2 = new String("5");
s3 = new String("Hello");
n = new Number(5);
b = new Boolean(true);
s1 == s2; // true
s1 == s3; // false
s1 == n; // true
s1 == b; // false
s1 === s2; // true
s1 === s3; // false
s1 === n; // false
s1 === b; // false
s1 !== s2; // false
s1 !== s3; // true
s1 !== n; // true
s1 !== b; // true
答案 3 :(得分:2)