判断数组是否包含某个元素的js函数实现方法


Posted in Javascript onMay 19, 2016

判断数组是否包含某个元素的js函数实现方法

Array.prototype.contains = function(obj) {
  var i = this.length;
  while (i--) {
    if (this[i] === obj) {
      return true;
    }
  }
  return false;
}

Array.prototype.contains = function(element) {
  for (var i = 0; i < this.length; i++) {
    if (this[i] == element) {
      return true;
    }
  }
  return false;
}


Array.prototype.in_array = function(e) {
  for(i=0; i<this.length && this[i]!=e; i++);
  return !(i==this.length);
}

 还有一个大牛是这样写的:

Array.prototype.S = String.fromCharCode(2);
Array.prototype.in_array = function(e) {
  var r = new RegExp(this.S+e+this.S);
  return (r.test(this.S+this.join(this.S)+this.S));
}

使用方法就是 :

var arr=["a","b"];

alert(arr.in_array("a"))

据说while减迭代是js里最快的一种方法,不知道是不是真的,出自

http://stackoverflow.com/questions/237104/javascript-array-containsobj

这里讨论的很激烈,建议去看看,如果有使用jQuery的话,直接使用jQuery实现的方法,参考地址:

http://api.jquery.com/jQuery.inArray/

以上这篇判断数组是否包含某个元素的js函数实现方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
JavaScript var声明变量背后的原理示例解析
Oct 12 Javascript
获取当前点击按钮的id用this.id实现
Mar 17 Javascript
Extjs 点击复选框在表格中增加相关信息行
Jul 12 Javascript
web 前端常用组件之Layer弹出层组件
Sep 22 Javascript
Angular2 之 路由与导航详细介绍
May 26 Javascript
详解JS中的this、apply、call、bind(经典面试题)
Sep 19 Javascript
jquery写出PC端轮播图实例
Jan 26 jQuery
vue中过滤器filter的讲解
Jan 21 Javascript
JS通过ajax + 多列布局 + 自动加载实现瀑布流效果
May 30 Javascript
深入浅析ng-bootstrap 组件集中 tabset 组件的实现分析
Jul 19 Javascript
纯js+css实现仿移动端淘宝网站的弹出详情框功能
Dec 29 Javascript
浅谈鸿蒙 JavaScript GUI 技术栈
Sep 17 Javascript
JQuery 在文档中查找指定name的元素并移除的实现方法
May 19 #Javascript
去除html代码里面的script正则方法
May 19 #Javascript
javascript面向对象程序设计高级特性经典教程(值得收藏)
May 19 #Javascript
jQuery获取当前点击的对象元素(实现代码)
May 19 #Javascript
jquery显示隐藏元素的实现代码
May 19 #Javascript
jQuery判断元素是否显示 是否隐藏的简单实现代码
May 19 #Javascript
JavaScript中的ParseInt(&quot;08&quot;)和“09”返回0的原因分析及解决办法
May 19 #Javascript
You might like
破解.net程序(dll文件)编译和反编译方法
2013/01/31 PHP
基于php使用memcache存储session的详解
2013/06/25 PHP
完整删除ecshop中获取店铺信息的API
2014/12/24 PHP
PHP数组内存利用率低和弱类型详细解读
2017/08/10 PHP
PHP中检查isset()和!empty()函数的必要性
2019/02/13 PHP
php5对象复制、clone、浅复制与深复制实例详解
2019/08/14 PHP
JavaScript面向对象(极简主义法minimalist approach)
2012/07/17 Javascript
jQuery创建平滑的页面滚动(顶部或底部)
2013/02/26 Javascript
ExtJs纵坐标值重复问题的解决方法
2014/02/27 Javascript
js获取浏览器基本信息大全
2014/11/27 Javascript
JavaScript数组对象实现增加一个返回随机元素的方法
2015/07/27 Javascript
D3.js实现折线图的方法详解
2016/09/21 Javascript
ReactNative页面跳转实例代码
2016/09/27 Javascript
JavaScript如何实现图片懒加载(lazyload) 提高用户体验(增强版)
2016/11/30 Javascript
JS实现一次性弹窗的方法【刷新后不弹出】
2016/12/26 Javascript
vue2.0 中使用transition实现动画效果使用心得
2018/08/13 Javascript
layui 给数据表格加序号的方法
2018/08/20 Javascript
react.js组件实现拖拽复制和可排序的示例代码
2018/08/20 Javascript
解决vue 打包发布去#和页面空白的问题
2018/09/04 Javascript
NodeJS 实现多语言的示例代码
2018/09/11 NodeJs
微信小程序使用swiper组件实现层叠轮播图
2018/11/04 Javascript
生产制造追溯系统之在线打印功能
2019/06/03 Javascript
[01:11:11]Alliance vs RNG 2019国际邀请赛淘汰赛 败者组BO1 8.20.mp4
2020/07/19 DOTA
简单了解Python中的几种函数
2017/11/03 Python
python scatter函数用法实例详解
2020/02/11 Python
使用Keras实现Tensor的相乘和相加代码
2020/06/18 Python
爬虫代理的cookie如何生成运行
2020/09/22 Python
发现两个有趣的CSS3动画效果
2013/08/14 HTML / CSS
德国EGOIST网店:销售畅销的设计师品牌
2017/04/18 全球购物
在C++ 程序中调用被C 编译器编译后的函数,为什么要加extern "C"
2014/08/09 面试题
汽车检测与维修专业求职信
2013/10/30 职场文书
中国梦演讲稿教师篇
2014/04/23 职场文书
学生打架检讨书
2014/10/20 职场文书
2014年学校工会工作总结
2014/12/06 职场文书
SpringBoot快速入门详解
2021/07/21 Java/Android
css3手动实现pc端横向滚动
2022/06/21 HTML / CSS