2014-02-10 85 views
1

我试过的东西来检查参数是否在函数给出与否:检查参数定义失败

var Patient = { 
    all : function(pagenumber){ 
     if(pagenumber == undefined){ 
      pagenumber = 1; 
     } 

var Patient = { 
    all : function(pagenumber){ 
     if(pagenumber == null){ 
      pagenumber = 1; 
     } 

但不知何故,他们没有工作做的我是什么错误?

+0

第一个应该工作,除非一些笨蛋已经在你的环境中重新定义了“undefined”。 'if(typeof pagenumber ==''undefined'){'是否工作? – Matt

+0

这应该工作:'if(!pagenumber && pagenumber!= 0){pagenumber = 1; }'。我是这样说的,因为有时pagenumber可以是'NaN',因为这个变量听起来是在处理数字。 –

+0

不知何故,当我打电话:'console.log(pagenumber);'it'retunrs o.Event' –

回答

1

尝试

var Patient = { 
     all : function(pagenumber){ 
       if(typeof pagenumber == 'undefined'){ 
        pagenumber = 1; 
      } 
0

既然你已经使用jQuery:

var Patient = { 
    all : function(pagenumber){ 
    if ($.type(pagenumber) === 'undefined')) { 
     pagenumber = 1; 
    } 
    } 
} 

或者,简化了(因为你似乎并不期望一个页面数 '0'):

var Patient = { 
    all : function(pagenumber){ 
    pagenumber = pagenumber || 1; 
    } 
} 
+1

相信jQuery答案是第一个获得upvoted的人。这不是jQuery应该使用的东西。 – Matt

+0

我不明白为什么,但如果我打印出你的代码:'console.log(pagenumber);'它retunrs o.Event –

+0

@Matt,那么为什么便捷方法存在? – UweB

1

检查var是否未定义,请使用以下内容:

var Patient = { 
    all : function(pagenumber){ 
    if(typeof pagenumber == "undefined"){ 
     pagenumber = 1; 
    } 
    } 
}