JavaScript에서 값이 배열에 있는지 확인하는 것은 직접 사용되지 않습니다_기본 지식

WBOY
풀어 주다: 2016-05-16 17:46:17
원래의
1103명이 탐색했습니다.
JS에는 값이 배열에 있는지 확인하는 데 직접 사용할 수 있는 함수가 없습니다. 예를 들어 PHP에는 in_array() 함수가 있습니다. 하지만 in_array()와 유사한 함수를 작성하여 함수에 값이 있는지 확인할 수 있습니다

예시 1

코드 복사 코드는 다음과 같습니다.


/ *
*
* 배열에 주어진 변수 값이 포함되어 있는지 확인
* 매개변수:
* needle: 쿼리할 값
* haystack: 쿼리된 배열
* in haystack 바늘이 존재하는지 쿼리하고, 발견되면 true를 반환하고, 그렇지 않으면 false를 반환합니다.
* 이 함수는 문자와 숫자에만 유효합니다.
*
*/

function findnum(){
var a=[1,2];//Assume a is 배열, obj는 판단할 숫자입니다.
var obj=1;
var b = false
for (var i = 0; i < a.length; i ) {
if ( a [i] == obj) {
b = true;break;
}
}
if (b)
alert("a[" i "]가 배열에 존재합니다. " a [i]);
else
alert("배열에 존재하지 않습니다" obj);
}

예 2
코드 복사 코드는 다음과 같습니다.

/**
* JS는 배열에 값이 존재하는지 확인합니다.
* Qiongtai 블로그
*/

// 정의 판단 함수
var in_array = function(arr){
// 매개변수가 배열인지 확인
var isArr = arr && console.log(
typeof arr==='object' ? arr .constructor===배열 ? arr .length ? arr.length===1 ? arr[0]:arr.join(','):'빈 배열': arr.constructor: typeof arr
);

// 배열이 아닌 경우 예외가 발생합니다.
if(!isArr){
throw "arguments is not Array";

// 배열에 있는지 여부를 탐색합니다.
for(var i =0,k=arr.length;iif(this==arr[i]){
return true;
}
}

// 배열에 없으면 false를 반환합니다.
return false
}

// 문자열에 프로토타입
String.prototype.in_array = in_array;
// Give 숫자 유형에 대한 프로토타입 추가
Number.prototype.in_array = in_array;

// 배열 선언 >var arr = Array('blue','red','110','120') ;

//String 테스트
var str = 'red'
var isInArray = str .in_array(arr);
alert(isInArray); // true

// 수치 테스트
var num = 119>var isInArray = num.in_array(arr); >alert(isInArray); // false
전달된 값이 배열이 아닌 경우 발생합니다. 예외 발생
/**
* JS는 배열에 값이 존재하는지 확인합니다.
* Qiongtai 블로그
*/

// 판단 함수 정의
var in_array = function(arr){
// 매개변수가 배열인지 판단
var isArr = arr && console.log(
typeof arr==='object' ? arr.constructor== =배열 ? arr.length ? arr.length===1 ? arr[0]:arr.join(' ,'):'빈 배열': arr.constructor: typeof arr

// 배열이 아닌 경우 예외가 발생합니다.
if(!isArr){
throw "arguments is not Array"
}

// 순회 여부
for(var i=0,k=arr.length;iif( this==arr[i]){
return true; >}
}

// 배열에 없으면 false를 반환합니다.
return false
}

// 문자열에 프로토타입을 추가합니다.
String.prototype.in_array = in_array;
// 숫자 유형에 프로토타입 추가
Number.prototype.in_array = in_array;

// 배열 선언
var arr = null;

// 문자열 테스트
var str = 'red';
var isInArray = str.in_array(arr)
예외: 인수 is not Array
JS는 배열에 중복된 값이 있는지 확인합니다.
var ary = new Array("111","22","33","111 ")
var s = ary.join(",") ",";
for(var i=0;iif(s.replace(ary [i] ",","" ).indexOf(ary[i] ",")>-1) {
alert("배열에 중복된 요소가 있습니다: " ary[i])
break
}
}


예제 5



코드 복사

코드는 다음과 같습니다.function isRepeat(arr){ var hash = {}; for(var i in arr) { if(hash[arr[i]])
return true; 🎜>hash[arr[i]] = true;
}
false 반환
}


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