编写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 相关文章推荐
直接生成打开窗口代码,不必下载
May 14 Javascript
js类中的公有变量和私有变量
Jul 24 Javascript
javascript 动态生成私有变量访问器
Dec 06 Javascript
javascript 用记忆函数快速计算递归函数
Mar 15 Javascript
JavaScript 实现类的多种方法实例
May 01 Javascript
JavaScript获取XML数据附示例截图
Mar 05 Javascript
js 设置缓存及获取设置的缓存
May 08 Javascript
JS+CSS实现Div弹出窗口同时背景变暗的方法
Mar 04 Javascript
巧用数组制作图片切换js代码
Nov 29 Javascript
js实现固定宽高滑动轮播图效果
Jan 13 Javascript
浅谈jquery拼接字符串效率比较高的方法
Feb 22 Javascript
python虚拟环境 virtualenv的简单使用
Jan 21 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
了解咖啡雨林联盟认证 什么是雨林认证 雨林认证是什么意思
2021/03/05 新手入门
一个阿拉伯数字转中文数字的函数
2006/10/09 PHP
php 删除cookie方法详解
2014/12/01 PHP
php实现留言板功能
2017/03/05 PHP
js之WEB开发调试利器:Firebug 下载
2007/01/13 Javascript
jQuery ready函数滥用分析
2011/02/16 Javascript
Extjs中ComboBoxTree实现的下拉框树效果(自写)
2013/05/28 Javascript
jquery easyui combox一些实用的小方法
2013/12/25 Javascript
JS中如何判断传过来的JSON数据中是否存在某字段
2014/08/18 Javascript
jquery制作漂亮的弹出层提示消息特效
2014/12/23 Javascript
jQuery中:lt选择器用法实例
2014/12/29 Javascript
Jquery简单实现GridView行高亮的方法
2015/06/15 Javascript
BootStrap Typeahead自动补全插件实例代码
2016/08/10 Javascript
webstorm中配置nodejs环境及npm的实例
2018/05/15 NodeJs
详解.vue文件中style标签的几个标识符
2018/07/17 Javascript
Vue-Router基础学习笔记(小结)
2018/10/15 Javascript
jquery树形插件zTree高级使用详解
2019/08/16 jQuery
小程序实现点击tab切换左右滑动
2020/11/16 Javascript
[05:20]2018DOTA2亚洲邀请赛主赛事第三日战况回顾 LGD率先挺进胜者组决赛
2018/04/06 DOTA
对Python中DataFrame按照行遍历的方法
2018/04/08 Python
Python实现查看系统启动项功能示例
2018/05/10 Python
解决python字典对值(值为列表)赋值出现重复的问题
2019/01/20 Python
在Django的View中使用asyncio的方法
2019/07/12 Python
python实现从wind导入数据
2019/12/03 Python
解决python使用list()时总是报错的问题
2020/05/05 Python
python中列表的含义及用法
2020/05/26 Python
基于K.image_data_format() == 'channels_first' 的理解
2020/06/29 Python
python爬虫看看虎牙女主播中谁最“顶”步骤详解
2020/12/01 Python
html5开发之viewport使用
2013/10/17 HTML / CSS
乌克兰排名第一的在线旅游超市:Farvater.Travel
2020/01/02 全球购物
参观考察邀请函范文
2014/01/29 职场文书
慰问信格式
2015/02/14 职场文书
青年志愿者服务活动总结
2015/05/06 职场文书
物业保安辞职信
2015/05/12 职场文书
python3实现常见的排序算法(示例代码)
2021/07/04 Python
Vue组件更新数据v-model不生效的解决
2022/04/02 Vue.js