객체가 배열인지 확인 : instanceof, array.isarray ()
웹 페이지 또는 글로벌 범위의 경우 인스턴스 운영자를 사용하십시오.
if (배열의 값 인스턴스) {// 값이 배열인지 판단합니다.
}
연산자 인스턴스는 전역 실행 환경이 하나만 있다고 가정하고 웹 페이지에 여러 프레임 워크가 포함 된 경우 ecmascript5에 의해 추가 된 새로운 Array.isArray () 메소드를 사용하십시오.
if (array.isarray (value)) {// 값이 배열인지 판단합니다
}
Array.isArray () 메소드에서 지원되는 브라우저에는 IE9+, Firefor 4+, Safari5+, Opera 10.5+ 및 Chrome이 포함됩니다.
이 방법을 구현하지 않는 브라우저에서 배열을 확인하려면 다음을 사용하십시오.
if (object.prototype.tostring.call (value) == "[Object Array]") {
}
배열 변환 문자열로 변환 : tolocalestring (), tostring (), valueof (), join ()
코드 사본은 다음과 같습니다.
var test = [ 'a', 'b', 'c'];
alert (test.toString ()); // a, b, c
ALERT (test.tolocalestring ()); // a, b, c
alert (test.valueof ()); // a, b, c
alert (test); // a, b, c는 기본적으로 toString () 메소드를 호출합니다
ALERT (test.join ( ',')); // a, b, c
alert (test.join ( '|')); // a | b | c
배열 요소 추가 및 제거 방법 : Push (), pop (), unshift (), shift ()
푸시 () 메소드는 여러 매개 변수를 수용하고 배열 끝에 하나씩 추가하고 수정 된 배열의 길이를 반환 할 수 있습니다.
POP () 메소드는 배열 끝에서 마지막 항목을 제거하고 제거 된 항목을 반환합니다.
UNSHIFT () 메소드는 배열의 프론트 엔드에 여러 매개 변수를 추가하고 새 배열 길이를 반환합니다.
Shift () 메소드는 배열에서 첫 번째 항목을 제거하고 제거 된 항목을 반환 할 수 있습니다.
코드 사본은 다음과 같습니다.
var test = [];
var count = test.push ( 'a', 'b'); // 배열 끝에서 하나씩 추가
count = test.push ( 'c');
경고 (count); // 3
경고 (테스트); //
var item = test.pop ();
경고 (항목); // c
경고 (test.length); // 2
정렬 방법 : Reverse () 및 sort ()
Reverse () 메소드는 배열 항목 라인을 뒤집고 배열 자체를 작동합니다.
Sort () 메소드는 배열 항목을 기본적으로 오름차순 순서로 배열하고 배열 자체에서 작동합니다.
코드 사본은 다음과 같습니다.
var test = [1,2,3,4,5];
test.reverse ();
경고 (테스트); // 5,4,3,2,1
var test2 = [0,1,5,10,15];
test2.sort ();
alert (test2); // 0,1,10,15,5 Sort () 메소드는 각 배열 항목의 toString () 메소드를 호출하고 문자열을 비교하여 정렬을 결정합니다. 여기에 정렬은 문자열 정렬입니다
정렬 () 메소드는 비교 함수로 전달 될 수 있습니다.
비교 함수는 첫 번째 매개 변수가 두 번째 파라미터가되면 음수를 반환하고 두 매개 변수가 동일하면 양수가됩니다.
코드 사본은 다음과 같습니다.
함수 비교 (value1, value2) {
if (value1 <value2) {
반품 -1;
} else if (value1> value2) {
반환 1;
}또 다른{
반환 0;
}
}
var test = [0,1,5,10,15];
test.sort (비교);
경고 (테스트); // 0,1,5,10,15
작동 방법 : concat (), slice (), splice ()
concat () 메소드는 2 개 이상의 배열을 연결하는 데 사용됩니다. 이 메소드는 기존 배열을 변경하지 않지만 결합 된 배열의 사본 만 반환합니다. 새 배열을 반환합니다.
코드 사본은 다음과 같습니다.
var a = [1,2,3];
경고 (A.Concat (4,5)); // 1,2,3,4,5
var arr = 새로운 배열 (3)
ARR [0] = "George"
ARR [1] = "John"
ARR [2] = "토마스"
var arr2 = 새로운 배열 (3)
arr2 [0] = "제임스"
ARR2 [1] = "Adrew"
ARR2 [2] = "Martin"
경고 (arr.concat (arr2));
// George, John, Thomas, James, Adrew, Martin
var arr = 새로운 배열 (3)
ARR [0] = "George"
ARR [1] = "John"
ARR [2] = "토마스"
var arr2 = 새로운 배열 (3)
arr2 [0] = "제임스"
ARR2 [1] = "Adrew"
ARR2 [2] = "Martin"
var arr3 = 새로운 배열 (2)
arr3 [0] = "윌리엄"
arr3 [1] = "프랭클린"
Alert (ARR.Concat (ARR2, ARR3))
// George, John, Thomas, James, Adrew, Martin, William, Franklin
Slice () 메소드는 기존 배열에서 선택한 요소를 반환합니다. ArrayObject의 요소가 포함 된 새로운 배열을 시작부터 끝까지 반환합니다 (이 요소 제외).
코드 사본은 다음과 같습니다.
var test = [ 'a', 'b', 'c', 'd', 'e'];
var arr1 = test.slice (1);
var arr2 = test.slice (1,4);
경고 (arr1); // b, c, d, e
경고 (arr2); // b, c, d
Splice () 메소드는 배열에/에서 항목을 추가/삭제하고 삭제 된 항목을 반환합니다. 배열 자체.
첫 번째 매개 변수 : 시작 위치, 두 번째 매개 변수 : 인터셉트 된 수, 세 번째 매개 변수 : 새 요소가 추가되었습니다.
코드 사본은 다음과 같습니다.
//삭제
var test = [ 'a', 'b', 'c'];
var removed = test.splice (0,1) // 첫 번째 항목을 삭제합니다
경고 (테스트); // b, c
ALERT (제거); // 삭제 된 항목을 반환합니다
//끼워 넣다
var test2 = [ 'a', 'b', 'c'];
var removed2 = test2.splice (1,0, 'd', 'e') // 위치 1에서 d, e를 삽입합니다
경고 (test2); // a, d, e, b, c
Alert (removed2) // 빈 배열
//바꾸다
var test3 = [ 'a', 'b', 'c'];
var removed3 = test3.splice (1,1, 'd', 'e') // 위치 1에서 d, e를 삽입합니다
경고 (test3); // a, d, e, c
경고 (제거 3) // b
위치 방법 : indexof (), lastIndexof ()
ECMAScript5는 IE9+, Firefox 2+, Safari 3+, Opera 9.5+, Chrome을 지원하는 방법을 제공합니다.
indexof () 메소드는 문자열에서 지정된 문자열 값의 첫 번째 발생을 반환합니다.
LastIndexof () 메소드는 지정된 문자열 값이 나타나는 마지막 위치를 리턴하고 문자열의 지정된 위치에서 뒤에서 앞쪽으로 검색합니다.
하나의 매개 변수 : 발견 할 값을 나타내는 경우, 인덱스 위치 (0부터 시작)를 반환하고 두 매개 변수는 시작 위치를 나타내고 두 번째 매개 변수는 찾은 값을 나타냅니다.
코드 사본은 다음과 같습니다.
var 번호 = [1,2,3,4,4,4,3,2,1];
경고 (숫자. indexof (4)); // 3
경고 (숫자 .lastIndexof (4)); // 5
경고 (숫자. indexof (4,4)); // 5
경고 (숫자 .lastIndexof (4,4)); // 3
반복 방법 : 모든 (), filter (), foreach (), map (), 일부 ()
ECMAScript5는 IE9+, Firefox 2+, Safari 3+, Opera 9.5+, Chrome을 지원하는 방법을 제공합니다.
모든 () : 배열의 각 항목에서 주어진 함수를 실행하고 함수가 각 항목에 대해 true를 반환하면 true가 반환됩니다.
필터 () : 배열의 각 항목에서 주어진 함수를 실행하고 true를 반환 할 항목 배열을 반환합니다.
foreach () : 배열의 각 항목에서 주어진 함수를 실행 하며이 메소드는 값을 반환하지 않습니다.
Map () : 배열의 각 항목에서 주어진 함수를 실행하여 각 기능 호출의 결과로 구성된 배열을 반환합니다.
일부 () : 배열의 각 항목에서 주어진 함수를 실행하고 함수가 두 항목에 대해 true를 반환하면 true가 반환됩니다.
위의 함수 중 어느 것도 배열에 포함 된 값을 수정하지 않습니다.
코드 사본은 다음과 같습니다.
var 번호 = [1,2,3,4,4,4,3,2,1];
//모든()
var EveryResult = 숫자.
반환 (항목> 2);
})
경고 (EveryResult); // false
//일부()
var someresult = numbers.some (함수 (항목, 색인, 배열) {
반환 (항목> 2);
})
경고 (Someresult); // true
//필터()
var filterresult = numbers.filter (함수 (항목, 색인, 배열) {
반환 (항목> 2);
})
경고 (FilterResult); // [3,4,5,4,3]
//지도()
var mapresult = numbers.map (함수 (항목, 색인, 배열) {
반환 (항목*2);
})
경고 (Mapresult); // [2,4,6,8,10,8,6,4,2]
// foreach ()
숫자 .foreach (함수 (항목, 색인, 배열) {
// 작업을 실행할 때 리턴 값이 없습니다
})
병합 방법 : Reduce (), reduceRight ()
ECMAScript5는 브라우저를 지원하는 방법을 제공합니다 : IE9+, Firefox 3+, Safari 4+, Opera 10.5+, Chrome
두 방법 모두 소위 배열을 반복 한 다음 최종 반환 값을 구축합니다. READE () 메소드는 배열의 첫 번째 항목에서 시작되며 experight () 메소드는 배열의 마지막 항목에서 시작됩니다.
코드 사본은 다음과 같습니다.
var 값 = [1,2,3,4,5];
var sum = value.reduce (function (prev, cur, index, array) {
prev+cur;
});
경고 (합); // 15
위의 것은이 기사에 관한 모든 것입니다. 나는 당신이 그것을 좋아하기를 바랍니다.