JavaScript中扩展Array contains方法实例

这篇文章主要介绍了JavaScript中扩展Array contains方法实例,本文直接给出实现代码,需要的朋友可以参考下

首先html中文网小编先为大家分享一个比较好用的代码

 Array.prototype.contains = function (a) { if ("string" == typeof a || "number" == typeof a) { for (var b in this) { if (a == this [b]) { return!0; }; } } return!1 };

先判断传入的参考是字符与数字才可以判断,这样就比较精准。

下面是一些推荐资料可以看看

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

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

当然我们也可以扩展Array类,如下js

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

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

alert([1, 2, 3].contains(2)); // => true
alert([1, 2, 3].contains('2')); // => false

下面是html中文网小编整理的几种方法

一个小误区 JS中的contains

在Java语言中,contains可以用于判断str1是否包含str2

原生JS中是有contains方法的

结构与测试代码如下

 
0133.cn

但它并不是字符串方法,,仅用于判断DOM元素的包含关系,参数是Element类型

若要在JS中判断俩字符串的包含关系,用indexOf()

但是我们可以通过扩展的方法来实现

 
0133.cn

下面是运行结果

当然也有通过正则实现的JS扩展Array,添加contains方法

 Array.prototype.contains = function(item){ return RegExp("\\b"+item+"\\b").test(this); };

直接返回true/false

JS判断Array数组中是否包含指定元素

1.调用方式:

var arr=["a","b"];
alert(arr.in_array("a"))

2.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 

站外扩展:

Jquery实现方式:http://api.jquery.com/jQuery.inArray/

具体选择看个人需求,html中文网小编建议能不用正则则不用,效率问题,代码是简洁就怕一些老的浏览器不支持。

以上就是JavaScript中扩展Array contains方法实例的详细内容,更多请关注0133技术站其它相关文章!

赞(0) 打赏
未经允许不得转载:0133技术站首页 » JavaScript 教程