jQuery中inArray方法注意事项分析


Posted in Javascript onJanuary 25, 2016

本文分析讲述了jQuery中inArray方法注意事项。分享给大家供大家参考,具体如下:

jquery为web开发者提供了很大的便捷,本文写作的目地是提醒大家慎重jquery中的inArray方法。

大家都知道javascript是一种弱类型语言,对于数字类型和字符类型,可以随意切换(例如:1+""="1"),下面开始说主题:

jquery的一个方法inArray(ele, array)是判断ele是否在array中存在,返回值是该元素第一次出现在数组array中的下标,没有时返回-1。

例如:

var a = 1;
var array = [1,2,3];
var b = $.inArray(a, array);

此时,b等于0。

但是,如果此时将a="1";,那么,再执行一下:

b = $.inArray(a, array);

此时,b等于-1。这将带来一个问题,因为有的人可能只希望得到这样的判断:"1" == 1,该逻辑表达式实在在javascript环境中,返回的是true,但是,在inArray中,返回的确实false,所以,如果一个数组中,存放的是非对象变量,尤其是对数字进行判断时,最好采用原始的判断方法。

也可以采用正则表达式来验证如下:

var a = 1;
var reg = new RegExp("(^"+a+",)|(^"+a+"$)|(,"+a+",)|(,"+a+"$)");
var array = [1,2,3,4];
reg.test(array.toString());// true
a = "1";
reg.test(array.toString());// true

好了,就说这么多~~

希望本文所述对大家jQuery程序设计有所帮助。

Javascript 相关文章推荐
超清晰的document对象详解
Feb 27 Javascript
js中一维数组和二位数组中的几个问题示例说明
Jul 17 Javascript
jQuery动态创建html元素的常用方法汇总
Sep 05 Javascript
基于AngularJS实现页面滚动到底自动加载数据的功能
Oct 16 Javascript
jqPlot jQuery绘图插件的使用
Jun 18 Javascript
AngularJS入门教程引导程序
Aug 18 Javascript
vue+ElementUI实现订单页动态添加产品数据效果实例代码
Jul 13 Javascript
jQuery实现菜单栏导航效果
Aug 15 jQuery
express + jwt + postMan验证实现持久化登录
Jun 05 Javascript
js tab栏切换代码实例解析
Sep 03 Javascript
node.js express框架实现文件上传与下载功能实例详解
Oct 15 Javascript
VUEX 数据持久化,刷新后重新获取的例子
Nov 12 Javascript
jquery ui dialog替代confirm实例分析
Jan 25 #Javascript
AngularJS控制器controller正确的通信的方法
Jan 25 #Javascript
AngularJS入门心得之directive和controller通信过程
Jan 25 #Javascript
详解jquery事件delegate()的使用方法
Jan 25 #Javascript
AngularJS中的Directive实现延迟加载
Jan 25 #Javascript
AngularJS中的Directive自定义一个表格
Jan 25 #Javascript
理解JavaScript事件对象
Jan 25 #Javascript
You might like
ThinkPHP框架实现的邮箱激活功能示例
2018/06/15 PHP
TP5框架实现上传多张图片的方法分析
2020/03/29 PHP
php判断数组是否为空的实例方法
2020/05/10 PHP
关于IE7 IE8弹出窗口顶上
2008/12/22 Javascript
动态为事件添加js代码示例
2009/02/15 Javascript
各浏览器对link标签onload/onreadystatechange事件支持的差异分析
2011/04/27 Javascript
jquery的ajaxSubmit()异步上传图片并保存表单数据演示代码
2013/06/04 Javascript
二叉树的非递归后序遍历算法实例详解
2014/02/07 Javascript
浅谈 jQuery 事件源码定位问题
2014/06/18 Javascript
js实现div闪烁原理及实现代码
2014/06/24 Javascript
js实现上传图片及时预览
2016/05/07 Javascript
详解Vue2.0之去掉组件click事件的native修饰
2017/04/20 Javascript
javascript 中事件冒泡和事件捕获机制的详解
2017/09/01 Javascript
微信小程序页面跳转功能之从列表的item项跳转到下一个页面的方法
2017/11/27 Javascript
QQ跳转支付宝并自动领红包脚本(最新)
2018/06/22 Javascript
vue自定义js图片碎片轮播图切换效果的实现代码
2019/04/28 Javascript
解决Vue在Tomcat8下部署页面不加载的问题
2019/11/12 Javascript
js常用方法、检查是否有特殊字符串、倒序截取字符串操作完整示例
2020/01/26 Javascript
JS中类的静态方法,静态变量,实例方法,实例变量区别与用法实例分析
2020/03/14 Javascript
使用优化器来提升Python程序的执行效率的教程
2015/04/02 Python
在Linux下调试Python代码的各种方法
2015/04/17 Python
Python图像灰度变换及图像数组操作
2016/01/27 Python
基于python list对象中嵌套元组使用sort时的排序方法
2018/04/18 Python
浅谈Django中的数据库模型类-models.py(一对一的关系)
2018/05/30 Python
Python3.5文件修改操作实例分析
2019/05/01 Python
python-OpenCV 实现将数组转换成灰度图和彩图
2020/01/09 Python
Python通过fnmatch模块实现文件名匹配
2020/09/30 Python
paramiko使用tail实时获取服务器的日志输出详解
2020/12/06 Python
什么是Assembly(程序集)
2014/09/14 面试题
公务员爱岗敬业演讲稿
2014/08/26 职场文书
2015年七一建党节活动总结
2015/03/20 职场文书
考博导师推荐信范文
2015/03/27 职场文书
2016教师节感恩话语
2015/12/09 职场文书
2019餐饮行业创业计划书!
2019/06/27 职场文书
导游词之安徽巢湖
2019/12/26 职场文书
一次MySQL启动导致的事故实战记录
2021/09/15 MySQL