JS 中判断空值 undefined 和 null

1.JS 中如何判断 undefined

JavaScript 中有两个特殊数据类型:undefined 和 null,下节介绍了 null 的判断,下面谈谈 undefined 的判断。

以下是不正确的用法:

var exp = undefined;
if (exp == undefined)
{
    alert("undefined");
}

exp 为 null 时,也会得到与 undefined 相同的结果,虽然 null 和 undefined 不一样。注意:要同时判断 undefined 和 null 时可使用本法。

var exp = undefined;
if (typeof(exp) == undefined)
{
    alert("undefined");
}

以下是正确的用法:

 

var exp = undefined;
if (typeof(exp) == "undefined")
{
    alert("undefined");
}

 

2.JS 中如何判断 null

以下是不正确的用法:

var exp = null; 
if (exp == null) 
{ 
alert(“is null”); 
}

exp 为 undefined 时,也会得到与 null 相同的结果,虽然 null 和 undefined 不一样。注意:要同时判断 null 和 undefined 时可使用本法。

var exp = null; 
if (!exp) 
{ 
alert(“is null”); 
}

如果 exp 为 undefined 或者数字零,也会得到与 null 相同的结果,虽然 null 和二者不一样。注意:要同时判断 null、undefined 和数字零时可使用本法。

var exp = null; 
if (typeof(exp) == “null”) 
{ 
alert(“is null”); 
}

为了向下兼容,exp 为 null 时,typeof 总返回 object。

var exp = null; 
if (isNull(exp)) 
{ 
alert(“is null”); 
}

JavaScript 中没有 isNull 这个函数。

 

以下是正确的用法:

var exp = null; 
if (!exp && typeof(exp)!=”undefined” && exp!=0) 
{ 
alert(“is null”); 
} 

 

尽管如此,我们在 DOM 应用中,一般只需要用 (!exp) 来判断就可以了,因为 DOM 应用中,可能返回 null,可能返回 undefined,如果具体判断 null 还是 undefined 会使程序过于复杂。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: 'b'undifined reference''是指在编译程序时遇到一个没有定义的符号或函数。这通常会发生在链接过程,因为编译器无法找到相应的符号或函数所在的对象文件或库文件。这个错误提示通常需要您检查代码是否正确引用了所需的库文件,或者是否正确实现了需要的函数或变量。 ### 回答2: "undefined reference"是一个程序编译时经常出现的错误。这个错误通常会发生在程序使用了一个函数或变量但是没有正确的链接到其定义的源文件的情况下。 这个错误的含义是指编译器在搜索函数或变量的定义时,找不到相应的实现。换句话说,这个函数或变量被使用了,但没有实际被定义。 当编译器编译一个源文件时,它会首先查找该文件所依赖的函数和全局变量的定义,然后将这些定义与应用程序使用的函数和变量进行链接。如果编译器没有找到所需的定义,就会发生"undefined reference"的错误。 这个错误通常是由以下一些原因引起的: 1. 没有正确包含相关的库文件。例如,如果使用了一个第三方库,编译器无法找到相应的lib库文件。 2. 函数或变量的声明与其实际的定义不匹配,导致编译器无法正确地链接。 3. 在头文件定义了函数,但是在源文件没有实现。 4. 在源文件实现了函数,但是在链接时,链接器没有将相关的对象文件链接到可执行文件。 为了解决这个问题,可以尝试以下几种方法: 1. 确认所需的库文件是否已经正确包含。 2. 检查头文件和源文件函数和变量的声明和定义是否一致。 3. 确定函数是否被正确地实现。 4. 确认源文件是否被正确编译,并且生成了对应的对象文件。 综合以上措施,应该能解决"undefined reference"的问题。 ### 回答3: undefined reference是一种错误,通常是在编译代码时发生的。当程序引用了某些函数或变量但是找不到它们的定义时就会出现此错误。这通常意味着程序没有正确链接某些库文件或者缺少实现代码。 在编译时,编译器把代码分为各个模块,编译每个模块时会检查它所依赖的函数或变量是否已经被定义。如果没有找到定义,编译器就会生成undefined reference错误。这通常是因为程序忘记连接所需的库文件、头文件等导致的。 此错误可以通过以下方式解决: 1. 确保所需的库文件已正确链接。可以通过向链接器传递正确的库路径和库名,来解决链接错误。 2. 确保所需的头文件已包含。在程序包含正确的头文件或者添加头文件搜索路径可以避免undefined reference错误。 3. 确认函数或变量的定义位置是否正确。如果函数或变量定义在另一个文件,则需要在程序包含该文件或者编译该文件并将其链接到程序。 4. 编写缺失的实现代码。如果函数或变量没有定义,需要手动编写该函数或变量的实现代码。 总之,undefined reference错误通常是由于程序缺少必要的依赖项而导致的。为避免此类错误,我们需要完整地理解代码所需的库和头文件,并确保正确链接和包含它们。如果仍然出现错误,需要仔细检查代码,找出对变量、函数的引用是否正确。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值