日期:2014-05-16 浏览次数:20423 次
1.类型分析:
javascript
有三种基本数据类型(字符串string、数值number、布尔boolean
),两种引用数据类型(对象Object、数组Array)和两种特殊数据类型(Null 、Undefined )。
alert(typeof a);??
//显示"undefined" 当定义了一个变量未初始化的时候,默认值为:undefined,而不是
数字0或字符串""。
如果直接用alert()方法显示一个未定义的变量
,例如:alert(abc),这时js就会报错:"abc"未定义,为防止这种错误,我们可以预先这样判断一下
if(typeof(abc)!="undefined")
{
alert(abc)
}
2,Js判断为空或不是对象或是否相等
var a1;??????? //a1的值为undefined var a4="";
var a5='';
var var a6 = new Object();
alert(a1 == a2); //显示"true"
undefined与null相等
alert(a1 == a3); //显示"false" alert(a2 == a3); //显示"false"
alert(a3 == a3); //显示"false"
NaN与任何值都不相等,与自己也不相等。
alert(a4==a5); //显示 "true"
双引号的字符串和单引号的字符串相等
alert(a4==null);//显示 "false"
空字符串不等于null
alert(a4==a6);//显示 "false"
alert(a6==null);//显示 "false" if?? (typeOf(x)?? ==?? "undefined") //
变量是否已定义
if?? (typeOf(x)?? ==?? "object") //变量是否是object类型
if(isNaN(x)) //返回true不是数字,返回false是数字
if(x) //直接判断
var a; if (a) alert("true"); else alert("false"); //false
undefined常量在if判断中为false
if (a1) alert("true"); else alert("false"); //false
数字0在if判断中为false
if (a2) alert("true"); else alert("false"); //true if (a3) alert("true"); else alert("false"); //true
不为0的数字在if判断中为true
if (a4) alert("true"); else alert("false"); //false
空字符串在if判断中为false
if (NaN) alert("true"); else alert("false"); //false if (null) alert("true"); else alert("false"); //false
任何值为null的变量在if判断中为false
var a1;
var a2 = true;
var a3 = 1;
var a4 =
"Hello";
var a5 = new Object();
var a6 = null;
var a7 = NaN;
var a8
= undefined;
alert(typeof a1); //显示"undefined"
alert(typeof a2);
//显示"boolean"
alert(typeof a3); //显示"number"
alert(typeof a4);
//显示"string"
alert(typeof a5); //显示"object"
alert(typeof a6);
//显示"object"
alert(typeof a7); //显示"number"
alert(typeof a8);
//显示"undefined"
var a2 = null;
var
a3 = NaN;
var a1 = 0;
var a2 = -1;
var a3 = 2;
var a4 = "";
var
a5 = '';
var a6 = new Object();