为了账号安全,请及时绑定邮箱和手机立即绑定

js函数默认参数的问题

标签:
JavaScript

今天工作中发现一个bug,我调查询接口的时候,查询方法有四个参数

let getquery = (e,start=1,limit=50,isExport){
    ...
}

其中limit是分页大小。是有默认值的,所以我调查询办法的时候,我通常会不赋值给参数

this.getquery(formparams,1,null,false)

我发现这样写之后,我查询数据的时候没有给limit参数。

原因是,null值,方法内部会真的当null值处理。

我们来试验一下,先声明一个函数:

let a = function(a=1,b=2){console.log(a+b)}

当我们运行:

a(1,null)
//1 1+null=1
a(1,undefined)
///3 1+2=3

所以想忽略这个参数,我应该是这样写:

this.getquery(formparams,1,undefined,false)

当我limit传undefined 的时候,才会去拿limit的默认值作为实际参数。

点击查看更多内容
TA 点赞

若觉得本文不错,就分享一下吧!

评论

作者其他优质文章

正在加载中
  • 推荐
  • 评论
  • 收藏
  • 共同学习,写下你的评论
感谢您的支持,我会继续努力的~
扫码打赏,你说多少就多少
赞赏金额会直接到老师账户
支付方式
打开微信扫一扫,即可进行扫码打赏哦
今天注册有机会得

100积分直接送

付费专栏免费学

大额优惠券免费领

立即参与 放弃机会
意见反馈 帮助中心 APP下载
官方微信

举报

0/150
提交
取消