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 Ajax使用 全解析
Dec 15 Javascript
javascript设置金额样式转换保留两位小数示例代码
Dec 04 Javascript
jQuery中each()方法用法实例
Dec 27 Javascript
JavaScript中的console.group()函数详细介绍
Dec 29 Javascript
JavaScript实现文字跟随鼠标特效
Aug 06 Javascript
js计算系统当前日期是星期几的方法
Jul 14 Javascript
jackson解析json字符串,首字母大写会自动转为小写的方法
Dec 22 Javascript
Angular2学习笔记之数据绑定的示例代码
Jan 03 Javascript
详解利用eventemitter2实现Vue组件通信
Nov 04 Javascript
vue实现鼠标移过出现下拉二级菜单功能
Dec 12 Javascript
vue项目实现设置根据路由高亮对应的菜单项操作
Aug 06 Javascript
vue使用v-model进行跨组件绑定的基本实现方法
Apr 28 Vue.js
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/06/03 PHP
WordPress中限制非管理员用户在文章后只能评论一次
2015/12/31 PHP
PHP操作MongoDB实现增删改查功能【附php7操作MongoDB方法】
2018/04/24 PHP
ThinkPHP3.2框架自定义配置和加载用法示例
2018/06/14 PHP
laravel 框架结合关联查询 when()用法分析
2019/11/22 PHP
javascript实现的基于金山词霸网络翻译的代码
2010/01/15 Javascript
jquery判断字符输入个数(数字英文长度记为1,中文记为2,超过长度自动截取)
2010/10/15 Javascript
jQuery分组选择器用法实例
2014/12/23 Javascript
AngularJS中取消对HTML片段转义的方法例子
2015/01/04 Javascript
js实现简单计算器
2015/11/22 Javascript
深入浅析同源策略和跨域访问
2015/11/26 Javascript
Angular2数据绑定详解
2017/04/18 Javascript
想用好React的你必须要知道的一些事情
2017/07/24 Javascript
AngularJS实现表单验证功能详解
2017/10/12 Javascript
webpack学习教程之前端性能优化总结
2017/12/05 Javascript
分析javascript原型及原型链
2018/03/18 Javascript
基于vue.js实现分页查询功能
2018/12/29 Javascript
JS实现的全选、全不选及反选功能【案例】
2019/02/19 Javascript
三分钟教你用Node做一个微信哄女友(基友)神器(面向小白)
2019/06/21 Javascript
微信小程序实现页面浮动导航
2020/01/08 Javascript
[40:13]Ti4 冒泡赛第二天 iG vs NEWBEE 2
2014/07/15 DOTA
Python中atexit模块的基本使用示例
2015/07/08 Python
tensorflow 获取变量&打印权值的实例讲解
2018/06/14 Python
利用python开发app实战的方法
2019/07/09 Python
将labelme格式数据转化为标准的coco数据集格式方式
2020/02/17 Python
keras 自定义loss model.add_loss的使用详解
2020/06/22 Python
python 通过pip freeze、dowload打离线包及自动安装的过程详解(适用于保密的离线环境
2020/12/14 Python
Nili Lotan官网:Nili Lotan同名品牌
2018/01/07 全球购物
销售总监工作职责
2013/11/21 职场文书
三年级评语大全
2014/04/23 职场文书
师德师风学习材料
2014/12/19 职场文书
悬空寺导游词
2015/02/05 职场文书
心理健康教育主题班会
2015/08/13 职场文书
(开源)微信小程序+mqtt,esp8266温湿度读取
2021/04/02 Javascript
html+css实现分层金字塔的实例
2021/06/02 HTML / CSS
Mysql索引失效 数据库表中有索引还是查询很慢
2022/05/15 MySQL