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

js如何判断一个方法的参数为数字确保方法体里的eq正确执行

js如何判断一个方法的参数为数字确保方法体里的eq正确执行

慕姐4208626 2018-08-13 10:09:06
假设有个方法/* index为数字或字符串数字 */ function test(index) {    // index验证预处理    return $('input').eq(index).val(); }如何确保eq正确执行?我根据大家的答案写了个结果,应该长这样:function test(index) {    /^[+-]?\d+$/.test(index) ? index = parseInt(index) : index = 0;    return $('input').eq(index).val(); }大家看看如何?另外大家回答都差不多,所以采纳第一个回答的人了,3q!
查看完整描述

1 回答

?
潇湘沐

TA贡献1816条经验 获得超6个赞

如果是判断是否是任意数字,那么:

typeof index === 'number' && Number.isInfinity(index);

考虑到你需要的是自然数,应该这样:

Number.isInteger(index) && index >= 0

index可以是数字或字符串数字。那么最好的方法就是用正则表达式了,大概是这样的:

/(0|[1-9][0-9]+)/


查看完整回答
反对 回复 2018-09-19
  • 1 回答
  • 0 关注
  • 762 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信