javascript 入门之 基本语法
undefined 和 null
如果声明了对象,但是没有赋值的话,那它的类型为 undefined 。声明了对象,但是还不想为它指定任何类型,可以赋值为 null 。注意在 JScript 中 null 和 undefined 的主要区别是 null 的操作象数字 0,而 undefined 的操作象特殊值NaN (不是一个数字)。
var bestAge = null;
var muchTooOld = 3 * bestAge; // muchTooOld 的值为 0。
var currentCount;
var finalCount = 1 * currentCount; // finalCount 的值为 NaN,因为 currentCount 为 undefined。
可以不用 var 关键字声明变量,并赋值。这就是隐式声明。
noStringAtAll = ""; // 隐式声明变量 noStringAtAll。
不能使用未经过声明的变量。
var volume = length * width; // 错误 — length 和 width 并不存在。
注意不能通过与 undefined 做比较来测试一个变量是否存在,虽然可以检查它的类型是否为“undefined”。在以下的代码范例中,假设程序员想测试是否已经声明变量 x :// 这种方法不起作用
if (x == undefined)
// 作某些操作
// 这个方法同样不起作用- 必须检查
// 字符串 "undefined"
if (typeof(x) == undefined)
// 作某些操作
// 这个方法有效
if (typeof(x) == "undefined")
// 作某些操作考虑将 undefined 值与null做比较。someObject.prop == null;如下情况时,比较的结果为 true, 如果属性 someObject.prop 包含 null 值, 如果属性 someObject.prop 不存在。
浙公网安备 33010602011771号