javascript如何判断值是不是在二维数组里

lxf2023-03-17 12:35:02

方式:1、运用for句子遍历数组,将数组元素和特定值进行对比,相同则存有;2、应用indexOf方式,假如原素存在二维数组中则回到下数值,不会有则回到“-1”;3、运用inArray()方式,假如原素存有则回到下数值,不会有则回到“-1”。

javascript如何判断值是不是在二维数组里

实例教程作业环境:windows7系统软件、javascript1.8.5&&jquery1.10.2版、Dell G3计算机。

js中存在一个二维数组,怎么判断一个元素是不是存在这一二维数组中呢,关键在于根据周而复始的方法分辨,编码如下所示:

var arr = ['a','s','d','f'];
console.info(isInArray(arr,'a'));//周而复始的方法

/**
 * 应用周而复始的方法判断一个原素是不是存在一个二维数组中
 * @param {Object} arr 二维数组
 * @param {Object} value 原素值
 */
function isInArray(arr,value){
    for(var i = 0; i < arr.length; i  ){
        if(value === arr[i]){
            return true;
        }
    }
    return false;
}

这种方法还是比较通用性的一种方式,但需要自己写函数公式,下边看一下第二种方法:

var arr = ['a','s','d','f'];
console.info(arr.indexOf('a'));//在IE一些版本号当中适用,可以自己拓展

这种方法是直接用二维数组的indexOf方式来判定,假如原素存在二维数组中,那样回到原素在二维数组里的下数值,假如不存有,那样回到-1,留意indexOf是区分大小写的,英文字母O必不可少英文大写,要不然会出错的,此外,此方法在一些版本IE里是失灵的,因而使用前需要做一下分辨,修订后的编码如下所示:

/**
 * 应用indexOf分辨原素是不是存在二维数组中
 * @param {Object} arr 二维数组
 * @param {Object} value 原素值
 */
function isInArray3(arr,value){
    if(arr.indexOf&&typeof(arr.indexOf)=='function'){
        var index = arr.indexOf(value);
        if(index >= 0){
            return true;
        }
    }
    return false;
}

第三种方法,就是使用jquery的inArray方式,此方法回到原素在二维数组里的字符,假如不存有与二维数组中,那样回到-1,编码如下所示:

/**
 * 应用jquery的inArray方式分辨原素是不是存在二维数组中
 * @param {Object} arr 二维数组
 * @param {Object} value 原素值
 */
function isInArray2(arr,value){
    var index = $.inArray(value,arr);
    if(index >= 0){
        return true;
    }
    return false;
}

这种方法可用于删掉一个二维数组里的不明下数值元素,编码如下所示:

var arr = ['a','s','d','f'];
console.info("删除元素以前的二维数组:" arr);
arr.splice($.inArray('a',arr),1);
console.info("删除元素以后的二维数组:" arr);

执行结果是:

[Web电脑浏览器] "删除元素以前的二维数组:a,s,d,f"    /test/index.html (12)
[Web电脑浏览器] "删除元素以后的二维数组:s,d,f"  /test/index.html (14)

【相关信息:javascript学习教程

以上就是关于javascript如何判断值是不是在二维数组里的具体内容,大量欢迎关注AdminJS其他类似文章!