JavaScript学习笔记:
巧用+/-规则转换类型,如果num是一个字符串想把它转换为数字可以:num-0
如果num是一个数字想把它转换为字符串可以:num+''
"1.23" == 1.23 //如果==2边一边是字符串一边是数字,会尝试把字符串转为数字进行比较
0 == false
null ==undefined
new Object() == new Object()
[1,2] == [1,2]
JavaScript的严格等于a===b,判断2边的类型,如果2边的类型不同会直接返回false
类型不同返回false
类型相同:
null === null
undefined === undefined
NaN===NaN,NaN跟任何比较都不相等,包括他自己
巧用+/-规则转换类型,如果num是一个字符串想把它转换为数字可以:num-0
如果num是一个数字想把它转换为字符串可以:num+''
"1.23" == 1.23 //如果==2边一边是字符串一边是数字,会尝试把字符串转为数字进行比较
0 == false
null ==undefined
new Object() == new Object()
[1,2] == [1,2]
JavaScript的严格等于a===b,判断2边的类型,如果2边的类型不同会直接返回false
类型不同返回false
类型相同:
null === null
undefined === undefined
NaN===NaN,NaN跟任何比较都不相等,包括他自己
new Object===new Object,JavaScript中的对象使用的是引用去比较而不是用的值进行比较
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
<title>无标题文档</title>
</head>
<body>
<script>
var a = (0==false);
document.write(a+"<br/>");//true
var b = (null==undefined);
document.write(b+"<br/>");//true
var c = (new Object()==new Object());
document.write(c+"<br/>");//false
var d = ("1.23"==1.23)
document.write(d+"<br/>");//true
var e = ([1,2]==[1,2]);
document.write(e+"<br/>");//false
var aa = (null===null);
document.write(aa+"<br/>");//true
var bb = (undefined===undefined);
document.write(bb+"<br/>");//true
var cc = (NaN===NaN);//Nan和NaN之间有什么区别
document.write(cc+"<br/>");//false
var dd = (new Object()===new Object());
document.write(dd+"<br/>");//false
</script>
</body>
</html>