首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >如何在jQuery中检查“未定义”值

如何在jQuery中检查“未定义”值
EN

Stack Overflow用户
提问于 2012-05-18 21:16:31
回答 11查看 563.6K关注 0票数 189

可能重复:

Detecting an undefined object property in JavaScript

javascript undefined compare

如何添加对未定义变量的检查,例如:

代码语言:javascript
复制
function A(val) {
  if (val == undefined) 
    // do this
  else
    // do this
}
EN

回答 11

Stack Overflow用户

回答已采纳

发布于 2012-05-18 21:17:12

JQuery库是专门为简化和统一某些JavaScript功能而开发的。

但是,如果您需要根据undefined值检查变量,则不需要发明任何特殊方法,因为JavaScript有一个typeof运算符,它简单、快速且跨平台:

代码语言:javascript
复制
if (typeof value === "undefined") {
    // ...
}

它返回一个字符串,指示变量或其他未计算的操作数的类型。与if (value === undefined) { ... }相比,这种方法的主要优点是,如果变量value不存在,typeof永远不会引发异常。

票数 422
EN

Stack Overflow用户

发布于 2012-05-18 21:24:52

在这种情况下,您可以使用=== undefined比较:if(val === undefined)

这之所以有效,是因为val始终存在(它是一个函数参数)。

如果你想测试一个不是参数的任意变量,也就是说可能根本没有定义,你必须使用if(typeof val === 'undefined')来避免val不存在的异常。

票数 28
EN

Stack Overflow用户

发布于 2012-05-18 21:18:08

请注意,typeof总是返回一个字符串,如果变量根本不存在,则不会生成错误。

代码语言:javascript
复制
function A(val){
  if(typeof(val)  === "undefined") 
    //do this
  else
   //do this
}
票数 16
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/10653367

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档