JavaScript中判断数组是否包含某个元素

javascript的Array没有contains方法,有时候这会不方便,contains方法实现很简单

可以扩展Array类,如下:

1写法1. 2Array.prototype.contains = function(obj) { 3 var i = this.length; 4 while (i--) { 5 if (this[i] === obj) { 6 return true; 7 } 8 } 9 return false; 10} 11写法2. 12Array.prototype.contains = function (element) { 13 for (var i = 0; i < this.length; i++) { 14 if (this[i] == element) { 15 return true; 16 } 17 } 18 return false; 19}

或者是定义函数:

1function contains(a, obj){ 2 for(var i = 0; i < a.length; i++) { 3 if(a[i] === obj){ 4 return true; 5 } 6 } 7 return false; 8}

这样就可以方便的使用contains方法了:

1console.info([1, 2, 3].contains(2)); // => true,调用Array的扩展方法 2console.info([1, 2, 3].contains('2')); // => false 3console.info(contains([1, 2, 3],2));//true,调用自定义函数contains方法 4console.info(contains([1, 2, 3],'2'));//false
点赞
收藏

评论区

加载中...

相关推荐

手写Java HashMap源码

HashMap的使用教程HashMap的使用教程HashMap的使用教程HashMap的使用教程HashMap的使用教程22

java反射Array的使用

1.什么是ArrayArray是一个类的简写,全限定类名是java.lang.reflect.Array.2.Array有什么用Array可以代表所有的数组,可以通过Array动态创建与修改里面的元素.3.Array使用示例(1)创建使用静态方法newI

JavaScript Array some() 方法

JavaScriptArraysome()方法实例检测数组中是否有元素大于18:varages\3,10,18,20\;functioncheckAdult(age){   returnage18;}func

PHP创建多级树型结构

<!lang:php<?php$areaarray(array('id'1,'pid'0,'name''中国'),array('id'5,'pid'0,'name''美国'),array('id'2,'pid'1,'name''吉林'),array('id'4,'pid'2,'n

269个JavaScript工具函数,助你提升工作效率(6)

!269个JavaScript工具函数,助你提升工作效率.png(https://static.oschina.net/uploads/img/202009/11172428_tWo3.jpg)151.数组中某元素出现的次数/@param{array}arr@param{}va

PHP高性能编程

1.能用PHP数组完成的工作,绝不用文件形式来代替,数组是内存操作,内存操作速度对比文件操作快很多!2.判断一个数值是否在一个数组中,然后决定是否追加数组内容时,不推荐使用in\_array或者array\_key\_exists,因为函数判断都不如isset结构判断来的快!$num0;$resultar