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 相关文章推荐
JAVASCRIPT IE 与 FF中兼容问题小结
Feb 18 Javascript
19个很有用的 JavaScript库推荐
Jun 27 Javascript
关于jQuery新的事件绑定机制on()的使用技巧
Apr 26 Javascript
window.open打开页面居中显示的示例代码
Dec 27 Javascript
jQuery源码解读之removeClass()方法分析
Feb 20 Javascript
jQuery简单实现图片预加载
Apr 20 Javascript
jQuery实现返回顶部效果的方法
May 29 Javascript
jQuery1.9+中删除了live以后的替代方法
Jun 17 Javascript
jquery动态遍历Json对象的属性和值的方法
Jul 27 Javascript
浅谈javascript中执行环境(作用域)与作用域链
Dec 08 Javascript
JavaScript中正则表达式使数字、中文或指定字符高亮显示
Oct 31 Javascript
微信小程序云开发之新手环境配置
May 16 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
php 常用算法和时间复杂度
2013/07/01 PHP
PHP异常处理浅析
2015/05/12 PHP
PHP实现的QQ空间g_tk加密算法
2015/07/09 PHP
浅谈Laravel中的三种中间件的作用
2019/10/13 PHP
深入聊聊Array的sort方法的使用技巧.详细点评protype.js中的sortBy方法
2007/04/12 Javascript
Javascript中的window.event.keyCode使用介绍
2011/04/26 Javascript
Jquery实现视频播放页面的关灯开灯效果
2013/05/27 Javascript
zTree插件之多选下拉菜单实例代码
2013/11/06 Javascript
不能不知道的10个angularjs英文学习网站
2016/03/23 Javascript
BootStrap学习系列之Bootstrap Typeahead 组件实现百度下拉效果(续)
2016/07/07 Javascript
基于javascript实现按圆形排列DIV元素(一)
2016/12/02 Javascript
jQuery插件之validation插件
2017/03/29 jQuery
JavaScript实现全选取消效果
2017/12/14 Javascript
jQuery实现网页拼图游戏
2020/04/22 jQuery
javascript中floor使用方法总结
2019/02/02 Javascript
Vue组件间的通信pubsub-js实现步骤解析
2020/03/11 Javascript
python 迭代器和iter()函数详解及实例
2017/03/21 Python
启动targetcli时遇到错误解决办法
2017/10/26 Python
Python pymongo模块用法示例
2018/03/31 Python
python3+PyQt5实现文档打印功能
2018/04/24 Python
Pandas将列表(List)转换为数据框(Dataframe)
2020/04/24 Python
Python如何根据时间序列数据作图
2020/05/12 Python
利用python实现后端写网页(flask框架)
2021/02/28 Python
英国标准协会商店:BSI Shop
2019/02/25 全球购物
建筑工程自我鉴定
2013/10/18 职场文书
工业学校毕业生自荐信范文
2014/01/03 职场文书
《胖乎乎的小手》教学反思
2014/02/26 职场文书
共产党员公开承诺书
2014/03/25 职场文书
2014高考励志标语
2014/06/05 职场文书
巾帼志愿者活动方案
2014/08/17 职场文书
公司车队管理制度
2015/08/04 职场文书
求职信如何撰写?
2019/05/22 职场文书
2019已经过半,你知道年中工作总结该怎么写吗?
2019/07/03 职场文书
「SHOW BY ROCK!!」“雫シークレットマインド”组合单曲MV公开
2022/03/21 日漫
python turtle绘图
2022/05/04 Python
SQL bool盲注和时间盲注详解
2022/07/23 SQL Server