JS判断元素是否在数组内
一、JQuery
如果是用JQuery的话,可以用inArray()函数:
jquery inarray()函数详解
jquery.inarray(value,array)
确定第一个参数在数组中的位置(如果没有找到则返回 -1 )。
determine the index of the first parameter in the array (-1 if not found).
返回值
jquery
参数
value (any) : 用于在数组中查找是否存在
array (array) : 待处理数组。
用法为:
- $.inArray(value, array)
for (var int = 0; int < array.length; int++) {var tradingRecordTypeId = array[int].tradingRecordTypeId;var tradingRecordTypeName = array[int].tradingRecordTypeName;//排除其它账户选中记录if($.inArray(tradingRecordTypeId,otherTradingRecordTypeIdArray) < 0){//已经选过的添加选中标记if($.inArray(tradingRecordTypeId,tradingRecordTypeIdArray) >= 0){template += '<tr><td><input type="checkbox" checked="checked" name="tradingRecordTypeId" id="tradingRecordTypeId" value="'+ tradingRecordTypeId +'" ></td>'; }else{template += '<tr><td><input type="checkbox" name="tradingRecordTypeId" id="tradingRecordTypeId" value="'+ tradingRecordTypeId +'" ></td>'; }template += '<td><span style="display:block;width: 250px;text-align:left" title="" id="tradingRecordTypeName">'+ tradingRecordTypeName +'</span></td></tr>'; }}
二、自己写函数
- function contains(arr, obj) {
- var i = arr.length;
- while (i--) {
- if (arr[i] === obj) {
- return true;
- }
- }
- return false;
- }
用法为:
- var arr = new Array(1, 2, 3);
- contains(arr, 2);//返回true
- contains(arr, 4);//返回false
三、给Array增加一个函数
- Array.prototype.contains = function (obj) {
- var i = this.length;
- while (i--) {
- if (this[i] === obj) {
- return true;
- }
- }
- return false;
- }
使用方法:
- [1, 2, 3].contains(2); //返回true
- [1, 2, 3].contains('2'); //返回false
四、使用indexOf
但是有个问题是IndexOf在某些IE版本中是不兼容的,可以用下面的方法:
- if (!Array.indexOf) {
- Array.prototype.indexOf = function (obj) {
- for (var i = 0; i < this.length; i++) {
- if (this[i] == obj) {
- return i;
- }
- }
- return -1;
- }
- }
先判断Array是否有indexOf方法,如果没有就扩展出此方法。
所以上面代码要写在使用indexOf方法的代码之前:
- var arr = new Array('1', '2', '3');
- if (!Array.indexOf) {
- Array.prototype.indexOf = function (obj) {
- for (var i = 0; i < this.length; i++) {
- if (this[i] == obj) {
- return i;
- }
- }
- return -1;
- }
- }
- var index = arr.indexOf('1');//为index赋值为0
JS判断元素是否在数组内相关推荐
- js jquery 判断元素是否在数组内
一,js方法 var arr = ["a", "b", "c"]; // js arr.indexOf("c") var ...
- JS判断元素是否含有子元素
JS判断元素是否含有子元素 Element.childNodes.length 获取元素子节点数组的长度 var r=document.getElementsByTagName("div&q ...
- js 日期比较大小,js判断日期是否在区间内,js判断时间段是否在另外一个时间段内...
/** * 日期解析,字符串转日期 * @param dateString 可以为2017-02-16,2017/02/16,2017.02.16 * @returns {Date} 返回对应的日期对 ...
- html判断是否有滚动条,JS 判断元素是否可以滚动
今天在解决 ios 移动端滚动穿透的问题时遇到一个问题,就是判断元素能否滚动,把这个过程记录下来.以下以纵向滚动为例,横向滚动同理. 嫌麻烦的可以直接查看代码. 基础概念 Element.scroll ...
- js判断对象是否是数组的几种方式
js判断对象是否是数组的几种方式 1.通过instanceof判断 instanceof运算符用于检验构造函数的prototype属性是否出现在对象的原型链中的任何位置,返回一个布尔值. let a ...
- go 判断元素是否在slice_Go内置数据结构原理
作者:jackshi,腾讯 PCG 后台开发工程师 从C++切换到Go语言一年多了,有必要深入了解一下Go语言内置数据结构的实现原理,本文结合示例与Go源码深入到Go语言的底层实现. 数组 定义 数组 ...
- js判断数据类型(如数组)及数组操作函数
在ES5的时候,js数据类型有6种:Number.String.Boolean.undefined.object.Null. 注:https://blog.csdn.net/u013592575/ar ...
- js判断元素是否存在 indexOf ()
indexOf在js中有着重要的作用,可以判断一个元素是否在数组中存在,或者判断一个字符是否在字符串中存在,如果存在返回该元素或字符第一次出现的位置的索引,不存在返回-1. 例如: var arr = ...
- js判断是对象还是数组的方法
效果图 方法 /*** 判断是否数组,例如[]* @author Rudon*/ function is_array (val) {// ES5方法return Array.isArray(val)? ...
最新文章
- java 手机音频播放,用Java实现音频播放
- Java微信公众平台开发(四)--回复消息的分类及实体的创建
- python中索引是从什么开始_python索引从0开始,那负数索引算什么?三秋道果说python...
- flink 写入到es_《从0到1学习Flink》—— Flink 写入数据到 Kafka
- 刺猬文│从启动方式来看播客链的运行机制—设置验证者
- 复现原文(一):Single-cell RNA sequencing of human kidney(step by step)
- tree(2018.10.26)
- 大数据之-Hadoop3.x_MapReduce_WordCount编写_Reducer---大数据之hadoop3.x工作笔记0090
- 【Postgresql-9.6.8】触发器实例(记录增、删、改)
- python画曲线图-Python数据可视化之Matplotlib(折线图)
- python进程问题
- java数据结构和算法------第八章
- 游戏开发之函数的增强(相比于C语言)(C++基础)
- 【ASP.NET】 GriedView 增删改查+ 自带分页
- 基于Qt的抽奖小程序
- Scratch编程与数学之求累加和!
- thinkpad E430拆装与升级
- 揭秘淘宝平台广告策略,拆解最佳投放实践
- win10系统点击开始菜单没反应
- react-native 关闭黄色警告