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 相关文章推荐
为jquery.ui.dialog 增加“在当前鼠标位置打开”的功能
Nov 24 Javascript
Extjs学习笔记之一 初识Extjs之MessageBox
Jan 07 Javascript
aspx中利用js实现确认删除代码
Jul 22 Javascript
ASP.NET中AJAX 调用实例代码
May 03 Javascript
js隐式全局变量造成的bug示例代码
Apr 22 Javascript
javascript实现博客园页面右下角返回顶部按钮
Feb 22 Javascript
微信小程序 Canvas增强组件实例详解及源码分享
Jan 04 Javascript
Angular.js基础学习之初始化
Mar 10 Javascript
vue拖拽组件 vuedraggable API options实现盒子之间相互拖拽排序
Jul 08 Javascript
JS实现提示框跟随鼠标移动
Aug 27 Javascript
vue element upload组件 file-list的动态绑定实现
Oct 11 Javascript
vue keep-alive实现多组件嵌套中个别组件存活不销毁的操作
Oct 30 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 伪造本地文件包含漏洞的代码
2011/11/03 PHP
php 伪造ip以及url来路信息方法汇总
2014/11/25 PHP
PHP微信开发之有道翻译
2016/06/23 PHP
图片完美缩放
2006/09/07 Javascript
JQuery优缺点分析说明
2010/06/09 Javascript
javascript中创建对象的三种常用方法
2010/12/30 Javascript
js中关于new Object时传参的一些细节分析
2011/03/13 Javascript
jqgrid 编辑添加功能详细解析
2013/11/08 Javascript
给ListBox添加双击事件示例代码
2013/12/02 Javascript
document.write的几点使用心得
2014/05/14 Javascript
jQuery中end()方法用法实例
2015/01/08 Javascript
JS实现带圆弧背景渐变效果的导航菜单代码
2015/10/13 Javascript
浅析AngularJS Filter用法
2015/12/28 Javascript
微信小程序 Audio API详解及实例代码
2016/09/30 Javascript
jquery checkbox的相关操作总结
2016/10/17 Javascript
javascript 内置对象及常见API详细介绍
2016/11/01 Javascript
AngularJS实现表格的增删改查(仅限前端)
2017/07/04 Javascript
AngularJS遍历获取数组元素的方法示例
2017/11/11 Javascript
基于JavaScript中字符串的match与replace方法(详解)
2017/12/04 Javascript
原生JS实现循环Nodelist Dom列表的4种方式示例
2018/02/11 Javascript
Vue实现日历小插件
2019/06/26 Javascript
Python闭包实现计数器的方法
2015/05/05 Python
django加载本地html的方法
2018/05/27 Python
Django框架多表查询实例分析
2018/07/04 Python
python图的深度优先和广度优先算法实例分析
2019/10/26 Python
python中的subprocess.Popen()使用详解
2019/12/25 Python
Python Numpy库常见用法入门教程
2020/01/16 Python
H5最强接口之canvas实现动态图形功能
2019/05/31 HTML / CSS
钉钉企业内部H5微应用开发详解
2020/05/12 HTML / CSS
新西兰第一的行李箱网站:luggage.co.nz
2019/07/22 全球购物
电大自我鉴定范文
2013/10/01 职场文书
师范毕业生个人求职信
2013/12/09 职场文书
大学军训感想
2014/02/12 职场文书
商场父亲节活动方案
2014/08/27 职场文书
审计班子对照检查材料
2014/08/27 职场文书
2019年国庆祝福语(70句)
2019/09/19 职场文书