编写js扩展方法判断一个数组中是否包含某个元素


Posted in Javascript onNovember 08, 2013

在C#语法中判断集合是否包含某个元素可以使用Contains方法,但是类似的问题在javascript中要怎么处理呢,js中没有Contains方法。
我们可以利用js的原型扩展来封装一个我们自己的Contains方法。

js代码:

<script type="text/javascript"> 
$(function () { 
Array.prototype.contains = function (element) { //利用Array的原型prototype点出一个我想要封装的方法名contains 
for (var i = 0; i < this.length; i++) { 
if (this[i] == element) { //如果数组中某个元素和你想要测试的元素对象element相等,则证明数组中包含这个元素,返回true 
return true; 
} 
} 
} 
//用一个例子来验证一些我们封装的方法 
var $subCategoryID = $("#hidSubCategory").val(); 
var $subCategoryIDs = new Array(); //构造一个数组对象 
$subCategoryIDs = $subCategoryID.split(","); //为数组赋值 
$("input[type=radio]").each(function () { 
if ($subCategoryIDs.contains($(this).attr("id"))) { //利用contains方法判断数组中是否含有$(this).attr("id") 
$(this).attr("checked", true); 
} 
}) 
}) 
</script>

验证发现其实使用contains方法的数组对象不必显式声明,即上面代码中的斜体部分可以简写为:
var $subCategoryID = $("#hidSubCategory").val().split(",");
Javascript 相关文章推荐
javascript 兼容所有浏览器的DOM扩展功能
Aug 01 Javascript
正则表达式中特殊符号及正则表达式的几种方法总结(replace,test,search)
Nov 26 Javascript
JavaScript学习笔记之数组的增、删、改、查
Mar 23 Javascript
基于Jquery插件实现跨域异步上传文件功能
Apr 26 Javascript
JS判断是否在微信浏览器打开的简单实例(推荐)
Aug 24 Javascript
详解SPA中前端路由基本原理与实现方式
Sep 12 Javascript
如何在Vue中使用CleaveJS格式化你的输入内容
Dec 14 Javascript
详解Vue依赖收集引发的问题
Apr 22 Javascript
原生javascript制作贪吃蛇小游戏的方法分析
Feb 26 Javascript
微信小程序搜索框样式并实现跳转到搜索页面(小程序搜索功能)
Mar 10 Javascript
详解阿里Node.js技术文档之process模块学习指南
Jan 04 Javascript
JavaScript 判断浏览器是否是IE
Feb 19 Javascript
jquery滚动条插件jScrollPane的使用介绍
Nov 08 #Javascript
JQ获取动态加载的图片大小的正确方法分享
Nov 08 #Javascript
用JS将搜索的关键字高亮显示实现代码
Nov 08 #Javascript
jQuery 获取浏览器所在的IP地址的小例子
Nov 08 #Javascript
js去除空格的12种实用方法
Nov 08 #Javascript
js加载之使用DOM方法动态加载Javascript文件
Nov 08 #Javascript
javascript获取url上某个参数的方法
Nov 08 #Javascript
You might like
使用MaxMind 根据IP地址对访问者定位
2006/10/09 PHP
让你的PHP同时支持GIF、png、JPEG
2006/10/09 PHP
PHP中HTTP方式下的Gzip压缩传输方法举偶
2007/02/15 PHP
PHP Socket 编程
2010/04/09 PHP
php控制linux服务器常用功能 关机 重启 开新站点等
2012/09/05 PHP
ThinkPHP实现将本地文件打包成zip下载
2014/06/26 PHP
PHP实现事件机制的方法
2015/07/10 PHP
php去掉文件前几行的方法
2015/07/29 PHP
PHP使用SMTP邮件服务器发送邮件示例
2018/08/28 PHP
点图片上一页下一页翻页效果
2008/07/09 Javascript
JavaScript 继承详解 第一篇
2009/08/30 Javascript
利用json获取字符出现次数的代码
2012/03/22 Javascript
js捕获鼠标滚轮事件代码
2013/12/16 Javascript
详解JavaScript正则表达式中的global属性的使用
2015/06/16 Javascript
Node.js实用代码段之获取Buffer对象字节长度
2016/03/17 Javascript
快速移动鼠标触发问题及解决方法(ECharts外部调用保存为图片操作及工作流接线mouseenter和mouseleave)
2016/08/29 Javascript
vue.js将unix时间戳转换为自定义时间格式
2017/01/03 Javascript
layui 数据表格+分页+搜索+checkbox+缓存选中项数据的方法
2019/09/21 Javascript
微信小程序实现一张或多张图片上传(云开发)
2019/09/25 Javascript
Python实现文件复制删除
2016/04/19 Python
Python 3实战爬虫之爬取京东图书的图片详解
2017/10/09 Python
Python二进制串转换为通用字符串的方法
2018/07/23 Python
Django框架文件上传与自定义图片上传路径、上传文件名操作分析
2019/05/10 Python
python射线法判断一个点在图形区域内外
2019/06/28 Python
Python 继承,重写,super()调用父类方法操作示例
2019/09/29 Python
在win64上使用bypy进行百度网盘文件上传功能
2020/01/02 Python
Python在后台自动解压各种压缩文件的实现方法
2020/11/10 Python
matplotlib相关系统目录获取方式小结
2021/02/03 Python
html5摇一摇代码优化包括DeviceMotionEvent等等
2014/09/01 HTML / CSS
西班牙国家航空官方网站:Iberia
2017/11/16 全球购物
英国女性运动服品牌:Sweaty Betty
2018/11/08 全球购物
合伙协议书范本
2014/04/21 职场文书
南京导游词
2015/02/03 职场文书
功夫熊猫观后感
2015/06/10 职场文书
好员工观后感
2015/06/17 职场文书
解决spring.thymeleaf.cache=false不起作用的问题
2022/06/10 Java/Android