자바스크립트에서 값이 배열에 있는지 확인하는 방법

青灯夜游
풀어 주다: 2021-12-07 14:46:37
원래의
9121명이 탐색했습니다.

메서드: 1. for 문을 사용하여 배열을 탐색하고 지정된 값과 배열 요소를 비교합니다. 2. 요소가 배열에 존재하면 indexOf 메서드를 사용하여 아래 첨자 값을 반환합니다. . 존재하지 않으면 "-1"을 반환합니다. 3. 요소가 존재하면 inArray() 메서드를 사용하여 아래 첨자 값을 반환하고, 존재하지 않으면 "-1"을 반환합니다.

자바스크립트에서 값이 배열에 있는지 확인하는 방법

이 튜토리얼의 운영 환경: 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 = [&#39;a&#39;,&#39;s&#39;,&#39;d&#39;,&#39;f&#39;];
console.info(arr.indexOf(&#39;a&#39;));//在IE某些版本中不支持,可以自行扩展
로그인 후 복사

이 방법은 배열의 indexOf 메서드를 직접 사용하여 해당 요소가 배열에 존재하는지 확인하는 것입니다. 존재하지 않으면 - 1을 반환합니다. indexOf는 대소문자를 구분합니다. 문자 O는 대문자로 시작해야 합니다. 그렇지 않으면 오류가 보고됩니다. 또한 이 방법은 일부 버전에서 작동하지 않습니다. IE이므로 사용하기 전에 판단하고 수정해야 합니다.

/**
 * 使用indexOf判断元素是否存在于数组中
 * @param {Object} arr 数组
 * @param {Object} value 元素值
 */
function isInArray3(arr,value){
    if(arr.indexOf&&typeof(arr.indexOf)==&#39;function&#39;){
        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 = [&#39;a&#39;,&#39;s&#39;,&#39;d&#39;,&#39;f&#39;];
console.info("删除元素之前的数组:"+arr);
arr.splice($.inArray(&#39;a&#39;,arr),1);
console.info("删除元素之后的数组:"+arr);
로그인 후 복사

실행 결과. is:

[Web浏览器] "删除元素之前的数组:a,s,d,f"    /test/index.html (12)
[Web浏览器] "删除元素之后的数组:s,d,f"  /test/index.html (14)
로그인 후 복사

[관련 권장 사항: javascript 학습 튜토리얼]

위 내용은 자바스크립트에서 값이 배열에 있는지 확인하는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

관련 라벨:
원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿