JavaScript中扩展Array contains方法实例
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
相关推荐
-
Javascript string 扩展库代码
Javascript原生的String处理函数显得很不够丰富,原生string函数:http://www.jb51.net/w3school/js/jsref_obj_string.htm问题1:是否有只是针对String类型的扩展库呢?有,不多,不全面. 观点2: JQuery的强大在于DOM操作,因此不希望js string 扩展库是基于jquery开发的,是否认同? 问题3:我们需要什么样的string扩展函数?这个问题可以参考其他js库,以及其他语言的string操作函数 Prototy
-
javascript String 的扩展方法集合
//获取字符数组 String.prototype.ToCharArray=function() { return this.split(""); } //获取N个相同的字符串 String.prototype.Repeat=function(num) { var tmpArr=[]; for(var i=0;i<num;i++) tmpArr.push(this); return tmpArr.join("")
-
为JS扩展Array.prototype.indexOf引发的问题探讨及解决
Array没有indexOf方法,这样在一个数组中查找某个元素的索引时比较麻烦,为了调用方便,于是通过prototype原型扩展了Array.prototype.indexOf(),这样用起来就比较方便了.但是这个自定义的indexOf在对数组进行遍历的时候却出现了问题. Array没有indexOf方法,这样在一个数组中查找某个元素的索引时比较麻烦,为了调用方便,于是通过prototype原型扩展了Array.prototype.indexOf(),这样用起来就比较方便了. 复制代码 代码如下
-
Javascript String对象扩展HTML编码和解码的方法
复制代码 代码如下: String.prototype.HTMLEncode = function() { var temp = document.createElement ("div"); (temp.textContent != null) ? (temp.textContent = this) : (temp.innerText = this); var output = temp.innerHTML; temp = null; return output; } String.
-
JavaScript Array扩展实现代码
indexOf 返回元素在数组的索引,没有则返回-1.与string的indexOf方法差不多. 如果其他浏览器没有实现此方法,可以用以下代码实现兼容: 复制代码 代码如下: Array.prototype.indexOf = function(el, start) { var start = start || 0; for ( var i=0; i < this.length; ++i ) { if ( this[i] === el ) {
-
JavaScript Array对象扩展indexOf()方法
背景:JavaScript中Array对象的标准方法中,没有indexOf()方法,可通过下面的代码扩展. 复制代码 代码如下: if (!Array.prototype.indexOf) { Array.prototype.indexOf = function(elt) { var len = this.length >>> 0; var from = Number(arguments[1]) || 0; from = (from < 0) ? Math.ceil(from) :
-
详解JS中Array对象扩展与String对象扩展
废话不多说了,直接给大家上array对象扩展代码了,具体代码如下所示: /** * Created by laixiangran on 2016/01/07. * Array扩展 */ (function() { // 遍历数组 if (typeof Array.prototype.forEach != "function") { Array.prototype.forEach = function (fn, context) { for (var i = 0; i < this
-
javascript Array数组对象的扩展函数代码
今天重点讲下 如何给Array对象扩展 1.直接在Array.prototype 上扩展 2.用自己方法对数组对象进行扩展 直接在Array.prototype上扩展,不能直接对dom对象使用(如:document.getElementsByTagName('div')得到的nodeList); 对有洁癖的同学而言 也破了原始生态环境的 : ) 先来看下 yui操作数组的一些方法,这里我对源码简单剥离并改动了下 复制代码 代码如下: (function(){ var YArray; YArray
-
js Array对象的扩展函数代码
使用 复制代码 代码如下: <script language=javascript>var isNumeric = function(x) { // returns true if x is numeric and false if it is not. var RegExp = /^(-)?(\d*)(\.?)(\d*)$/; return String(x).match(RegExp);}var myArray = [1,'two',3,'four',5,'six',7,'e
-
JavaScript中扩展Array contains方法实例
javascript的Array没有contains方法,有时候这会不方便,contains方法实现很简单: 复制代码 代码如下: function contains(a, obj) { var i = a.length; while (i--) { if (a[i] === obj) { return true; } } return false; } 当然我们也可以扩展Array类,如下js 复制代码 代码如下
-
JavaScript中利用Array filter() 方法压缩稀疏数组
什么是稀疏数组 数组元素的索引不一定要连续的,它们之间可以有空缺.每个javaScript数组都有一个length属性.针对非稀疏数组,该属性就是数组元素的个数:针对稀疏数组,length比所有元素的个数要大. Array filter() 方法会跳过稀疏数组中缺少的元素,它的返回数组总是稠密的. (1)压缩稀疏数组的空缺: var dense = sparse.filter( function(currentValue) { return true; } ); (2)压缩稀疏数组的空缺,并且删
-
ES6中数组array新增方法实例总结
本文实例讲述了ES6中数组array新增方法.分享给大家供大家参考,具体如下: ●find : let arr=[1,2,234,'sdf',-2]; arr.find(function(x){ return x<=2; })//结果:1,返回第一个符合条件的x值 arr.find(function(x,i,arr){ if(x<2){console.log(x,i,arr)} })//结果:1 0 [1, 2, 234, "sdf", -2],-2 4 [1, 2, 23
-
JavaScript中Promise的使用方法实例
目录 前言 Promise简介 什么是回调地狱? Promise的特点 创建Promise实例 then方法 resolve 和 reject 的参数传递 then()链式调用 then()的返回值 catch方法 finally方法 Promise的方法 Promise.resolve() Promise.reject() Promise.all() Promise.allSettled() Promise.race() async 和 await async函数函数 await 异步函数的错
-
JavaScript中利用Array和Object实现Map的方法
本文实例讲述了JavaScript中利用Array和Object实现Map的方法.分享给大家供大家参考.具体如下: 昨天突然看到以前别人用JavaScript实现的Map感觉很不错,但是发现有个别方法有问题,顺便完善了下,添加了 remove .indexOf .values.clear等方法. /** * @author blune68 * @version 0.1, 07/27/12 * */ function Map(){ this.keys = new Array(); this.dat
-
JavaScript中call和apply方法的区别实例分析
本文实例分析了JavaScript中call和apply方法的区别.分享给大家供大家参考,具体如下: 这两个方法不经常用,但是在某些特殊场合中是非常有用的,下面主要说下它们的区别: 1.首先,JavaScript是一门面向对象的语言,也就是说它有this的概念.而且JavaScript是一门动态类型语言,为什么说它是动态类型语言呢?因为JavaScript在编译时没有类型检查的过程,不会去检查创建的对象类型,也不会去检查传递的参数类型,所以它的变量类型在运行期间是可以改变的. 2.要知道call
-
JavaScript中数组Array.sort()排序方法详解
JavaScript中数组的sort()方法主要用于对数组的元素进行排序.其中,sort()方法有一个可选参数.但是,此参数必须是函数. 数组在调用sort()方法时,如果没有传参将按字母顺序(字符编码顺序)对数组中的元素进行排序,如果想按照其他标准进行排序,就需要进行传一个参数且为函数,该函数要比较两个值,并且会返回一个用于说明这两个值的相对顺序的数字. 1.对数字数组进行由小到大的顺序进行排序. 代码: var arr = [22,12,3,43,56,47,4]; arr.sort();
-
模拟javascript中的sort排序(简单实例)
一.javascript中sort对数据进行排序的原理 sort() 方法对数组的元素做原地的排序,并返回这个数组. sort 可能不是稳定的.默认按照字符串的Unicode码位点排序; 语法:arr.sort([compareFunction]) 参数 compareFunction 可选.用来指定按某种顺序进行排列的函数.如果省略,元素按照转换为的字符串的诸个字符的Unicode位点进行排序. 如果 compareFunction(a, b) 小于 0 ,那么 a 会被排列到 b 之前: 如
-
javascript中的数据类型检测方法详解
本文实例讲述了javascript中的数据类型检测方法.分享给大家供大家参考,具体如下: 在javascript中数据类型 值类型: 布尔(Boolean),数值(Number),字符(String),空(Null),未定义(Undefined) 引用类型: 对象(Object),函数(Function),数组(Array),日期(Date),正则(RegExp)等等. 检测方式之 typeof console.log(typeof undefined)//'undefined' console
-
详解JavaScript中的数组合并方法和对象合并方法
1 数组合并 1.1 concat 方法 var a=[1,2,3],b=[4,5,6]; var c=a.concat(b); console.log(c);// 1,2,3,4,5,6 console.log(a);// 1,2,3 不改变本身 1.2 循环遍历 var arr1=['a','b']; var arr2=['c','d','e']; for(var i=0;i<arr2.length;i++){ arr1.push(arr2[i]) } console.log(arr1);/
随机推荐
- jQuery判断数组是否包含了指定的元素
- ajax实现动态下拉框示例
- cmd批处理转义字符%的详细解释
- Java版仿QQ验证码风格图片验证码
- JavaScript 生成随机数并自动大小排序
- 屏蔽网页右键复制和ctrl+c复制的js代码
- VS2015正式版安装教程
- Python实现给qq邮箱发送邮件的方法
- gearman的安装启动及python API使用实例
- 基于ASP实现QQ在线查询功能
- jsp无法提交nicEdit中的内容的解决方法
- mysql中如何使用正则表达式查询
- javascript ajax类AJAXRequest2007-12-31 更新
- QQ里的强人 签名
- 用SQL统计SQLServe表存储空间大小的代码
- JavaFX 监听窗口关闭事件实例详解
- Java里volatile关键字是什么意思
- android开发教程之间隔执行程序(android计时器)
- C++ 中exit(),_exit(),return,abort()函数的区别
- 深入理解PHP中的Session和Cookie