javascript检查某个元素在数组中的索引值


Posted in Javascript onMarch 30, 2016

在现在代浏览器中判断一个元素在不在一个数组中,咱们可以用Array对象的indexOf()方法来取得这个元素在当前数组中的索引值,若索引值不等于-1,数组中就存在这个元素,

例如:

var arr = [2,53,23,'test',9,'array'];
//判断array在不在数组arr中
arr.indexOf('array') !== -1 ? alert('存在') : alert('不存在');
但是IE9以前的版本都不支持此方法,那咱们就只能扩展一个:
 代码如下复制代码
Array.prototype.indexOf = function(el){
 for (var i=0,n=this.length; i<n; i++){
 if (this[i] === el){
  return i;
 }
 }
 return -1;
}

下面咱们就来检测一下各个浏览器的兼容性,代码如下:

var arr = [2,53,23,'test',9,'array'];
if(!Array.indexOf){
  Array.prototype.indexOf = function(el){
 for (var i=0,n=this.length; i<n; i++){
 if (this[i] === el){
  return i;
 }
 }
 return -1;
   } 
}
arr.indexOf('array') !== -1 ? alert('存在') : alert('不存在');

上面就是用Array的indexOf方法来判断数组中一个元素是否存在的方法。

Array的原生方法:

concat(): 连接两个或更多的数组哦
join(): 把数组的所有元素放在一个字符串中
pop():删除并返回数组的最后一个元素
push():向数组的末尾添加一个元素,并返回数组长度。
reverse():颠倒数组中的元素顺序
shift(): 删除并返回数组的第一个元素。
slice():返回已选定的元素
sort():对数组的元素进行排序
splice():删除元素,并向数组添加新元素。
toSource():返回该对象的源代码
toString():把数组转换为字符串,并返回结果
valueOf():返回数组对象的原始值。

Javascript 相关文章推荐
javascript得到XML某节点的子节点个数的脚本
Oct 11 Javascript
JS字符串函数扩展代码
Sep 13 Javascript
使用Math.floor与Math.random取随机整数的方法详解
May 07 Javascript
js调用浏览器打印模块实现点击按钮触发自定义函数
Mar 21 Javascript
jQuery函数的第二个参数获取指定上下文中的DOM元素
May 19 Javascript
js实现div闪烁原理及实现代码
Jun 24 Javascript
angularjs表格分页功能详解
Jan 21 Javascript
JavaScript对象数组如何按指定属性和排序方向进行排序
Jun 15 Javascript
javascript作用域、作用域链(菜鸟必看)
Jun 16 Javascript
BootStrap Table前台和后台分页对JSON格式的要求
Jun 28 Javascript
js canvas实现适用于移动端的百分比仪表盘dashboard
Jul 18 Javascript
微信小程序使用modal组件弹出对话框功能示例
Nov 29 Javascript
js中数组结合字符串实现查找(屏蔽广告判断url等)
Mar 30 #Javascript
谈一谈js中的执行环境及作用域
Mar 30 #Javascript
js实现(全选)多选按钮的方法【附实例】
Mar 30 #Javascript
用JS生成UUID的方法实例
Mar 30 #Javascript
如何通过js实现图片预览功能【附实例代码】
Mar 30 #Javascript
jquery $.trim()去除字符串空格的实现方法【附图例】
Mar 30 #Javascript
jquery实现简单的banner轮播效果【实例】
Mar 30 #Javascript
You might like
PHP获取http请求的头信息实现步骤
2012/12/16 PHP
php实现只保留mysql中最新1000条记录
2015/06/18 PHP
PHP实现的多文件上传类及用法示例
2016/05/06 PHP
深入浅出讲解:php的socket通信原理
2016/12/03 PHP
浅谈PHP的反射API
2017/02/26 PHP
一个javascript参数的小问题
2008/03/02 Javascript
javascript Select标记中options操作方法集合
2008/10/22 Javascript
Jquery操作Select 简单方便 一个js插件搞定
2009/11/12 Javascript
JS注释所产生的bug 即使注释也会执行
2013/11/19 Javascript
可插入图片的TEXT文本框
2013/12/27 Javascript
js用typeof方法判断undefined类型
2014/07/15 Javascript
jquery easyui datagrid实现增加,修改,删除方法总结
2016/05/25 Javascript
jQuery简单创建节点的方法
2016/09/09 Javascript
HTML5 JS压缩图片并获取图片BASE64编码上传
2020/11/16 Javascript
Easyui Tree获取当前选择节点的所有顶级父节点
2017/02/14 Javascript
VUE中v-model和v-for指令详解
2017/06/23 Javascript
Layui数据表格之获取表格中所有的数据方法
2018/08/20 Javascript
详解JavaScript对数组操作(添加/删除/截取/排序/倒序)
2019/04/28 Javascript
vue中使用element组件时事件想要传递其他参数的问题
2019/09/18 Javascript
JS加载解析Markdown文档过程详解
2020/05/19 Javascript
[03:11]2014DOTA2国际邀请赛-VG掉入败者组 独家专访357
2014/07/19 DOTA
python通过加号运算符操作列表的方法
2015/07/28 Python
python中format()函数的简单使用教程
2018/03/14 Python
python 重定向获取真实url的方法
2018/05/11 Python
python爬虫模块URL管理器模块用法解析
2020/02/03 Python
pycharm sciview的图片另存为操作
2020/06/01 Python
现代生活方式的家具和装饰:Dot & Bo
2018/12/26 全球购物
静态成员和非静态成员的区别
2012/05/12 面试题
介绍一下Prototype的$()函数,$F()函数,$A()函数都是什么作用?
2014/03/05 面试题
仓库保管员岗位职责
2013/12/20 职场文书
优秀大学生自荐信
2014/06/09 职场文书
二年级上册数学教学计划
2015/01/20 职场文书
材料员岗位职责范本
2015/04/11 职场文书
道士塔读书笔记
2015/06/30 职场文书
Redis RDB技术底层原理详解
2021/09/04 Redis
Python 多线程处理任务实例
2021/11/07 Python