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 相关文章推荐
js的写法基础分析
Jan 17 Javascript
Prototype源码浅析 String部分(一)之有关indexOf优化
Jan 15 Javascript
探索Emberjs制作一个简单的Todo应用
Nov 07 Javascript
javascript函数特点实例分析
May 14 Javascript
浅析BootStrap模态框的使用(经典)
Apr 29 Javascript
jquery组件WebUploader文件上传用法详解
Oct 23 Javascript
cocos creator Touch事件应用(触控选择多个子节点的实例)
Sep 10 Javascript
angularjs实现过滤并替换关键字小功能
Sep 19 Javascript
聊聊JS动画库 Velocity.js的使用
Mar 13 Javascript
Jquery获取radio选中值实例总结
Jan 17 jQuery
深入解析vue 源码目录及构建过程分析
Apr 24 Javascript
js防抖函数和节流函数使用场景和实现区别示例分析
Apr 11 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
第六节--访问属性和方法
2006/11/16 PHP
PHP 的几个配置文件函数
2006/12/21 PHP
php Calender(日历)代码分享
2014/01/03 PHP
详解Window7 下开发php扩展
2015/12/31 PHP
Laravel实现构造函数自动依赖注入的方法
2016/03/16 PHP
[原创]PHP实现字节数Byte转换为KB、MB、GB、TB的方法
2017/08/31 PHP
Domino中运用jQuery读取视图内容的方法
2009/10/21 Javascript
jQuery 源码分析笔记(7) Queue
2011/06/19 Javascript
jQuery拖动图片删除示例
2013/05/10 Javascript
js实时获取系统当前时间实例代码
2013/06/28 Javascript
js的.innerHTML = ""IE9下显示有错误的解决方法
2013/09/16 Javascript
JS获取计算机mac地址以及IP的实现方法
2014/01/08 Javascript
js 触发select onchange事件代码
2014/03/20 Javascript
js与css实现弹出层覆盖整个页面的方法
2014/12/13 Javascript
JS多文件上传的实例代码
2017/01/11 Javascript
AngularJS中的按需加载ocLazyLoad示例
2017/01/11 Javascript
微信小程序学习之数据处理详解
2017/07/05 Javascript
js实现随机点名小功能
2017/08/17 Javascript
bootstrap3中container与container_fluid外层容器的区别讲解
2017/12/04 Javascript
Angular4学习之Angular CLI的安装与使用教程
2018/01/04 Javascript
详解如何在React组件“外”使用父组件的Props
2018/01/12 Javascript
js判断在哪个浏览器打开项目的方法
2020/01/21 Javascript
jQuery实现简单全选框
2020/09/13 jQuery
如何手写简易的 Vue Router
2020/10/10 Javascript
对python 通过ssh访问数据库的实例详解
2019/02/19 Python
python实现简单图片物体标注工具
2019/03/18 Python
安装完Python包然后找不到模块的解决步骤
2020/02/13 Python
css3动画效果小结(推荐)
2016/07/25 HTML / CSS
努比亚手机官网:nubia
2016/10/06 全球购物
什么是Rollback Segment
2013/04/22 面试题
新闻编辑自荐信
2013/11/03 职场文书
自我评价是什么
2014/01/04 职场文书
年度考核自我评价
2014/01/25 职场文书
九年级物理教学反思
2014/01/29 职场文书
上课迟到检讨书
2015/05/06 职场文书
python 中[0]*2与0*2的区别说明
2021/05/10 Python