배열 유형은 ECMAScript에서 가장 일반적으로 사용되는 참조 유형입니다. ECMAScript의 데이터는 대부분의 다른 언어의 배열과는 상당히 다릅니다. ECMAScript의 데이터는 다른 언어의 배열과 같은 데이터의 주문 목록이지만, 차이점은 ECMAScript 배열의 각 항목이 숫자 값, 문자열 또는 객체에 관계없이 모든 유형의 데이터를 보유 할 수 있다는 것입니다. 동시에 ECMAScript의 배열 크기를 동적으로 조정할 수 있습니다. 즉, 새로 추가 된 데이터를 수용하기 위해 데이터 추가에 따라 자동으로 성장할 수 있습니다. 아래는 일반적으로 사용되는 작동 기능 및 JavaScript의 배열 사용에 대한 요약입니다.
• 배열을 만듭니다
배열을 생성하는 두 가지 주요 방법은 다음과 같이 생성자와 배열 리터럴입니다.
var arr = new Array (); var arr = [];
생성자의 경우 숫자 값을 전달하여 다음과 같이 주어진 수의 용어를 포함하는 배열을 생성 할 수 있습니다.
var arr = 새로운 배열 (3); // 배열의 길이는 3입니다
다음과 같이 배열에 저장된 값을 직접 전달할 수도 있습니다.
var arr = new Array ( "빨간색", "녹색", "파란색");
어느 쪽이든, 배열 리터럴을 사용하여 배열을 만드는 것이 좋습니다.
• 탐지 어레이
단일 글로벌 실행 환경의 경우 인스턴스 운영자는 예를 들어 배열인지 여부를 감지 할 수 있습니다.
var arr = [1,2,3]; Console.log (ARR instanceof Array); //진실
그러나 웹 페이지에 여러 프레임 워크가 포함 된 경우 여러 전역 실행 환경도 포함되어 있습니다. ES5는 Array.isArray () 메소드를 추가하여 값이 배열인지 여부를 결정했습니다.
if (array.isarray (arr)) {// 일부 작업 수행}}• 배열 문자열 변환
각 객체에는 tolocalestring (), tostring () 및 valueof () 메소드가 있습니다. 배열의 toString () 메소드를 호출하면 배열의 각 값의 문자열 형태로 스 플라이 싱 된 문자열을 반환하고 쉼표로 분리됩니다. 배열의 valueOf () 메소드를 호출하면 배열이 반환되지만 실제로는 배열에서 각 항목의 toString () 메소드라고합니다.
var arr = [ "빨간색", "녹색", "파란색"]; console.log (arr.toString ()); // 빨간색, 녹색, 파란색 콘솔 .Log (arr.valueof ()); // 빨간색, 녹색, 파란색 콘솔 (ARR); // 빨간색, 녹색, 파란색
배열의 tolocalestring () 메소드는 배열에서 각 항목의 tolocalestring () 메소드를 호출하는 toString ()과 다르고 각 항목 tolocalestring () 메소드의 반환 값을 쉼표로 분리 한 문자열로 스 플라이싱합니다. join () 메소드를 사용하면 다른 분리기를 사용하여 다음과 같이이 문자열을 만들 수 있습니다.
var arr = [ "빨간색", "녹색", "파란색"]; console.log (arr.join ( ",")); // 빨간색, 녹색, 파란색 콘솔 .log (arr.join ( "||")); // 빨간색 || bee || 블루
• 배열을 추가 및 삭제합니다
푸시 () 메소드는 여러 매개 변수를 수신하고 배열 끝에 하나씩 추가하고 수정 된 배열의 길이를 반환합니다.
var arr = [1,2,3]; arr.push (4,5); Console.log (ARR); // [1,2,3,4,5]
푸시 ()와 달리 팝 () 메소드는 배열 끝에서 마지막 항목을 제거하고 제거 된 항목을 반환합니다.
var arr = [1,2,3]; arr.pop (); // 3 arr.pop (); // 2 console.log (ARR); // [1]
사용 된 다른 두 가지 방법은 shift () 및 unshift ()이며, 이는 pop () 및 push ()와 유사합니다. Shift () 메소드는 배열의 시작 위치에서 항목을 제거하고 제거 된 항목을 반환하는 데 사용됩니다.
var arr = [1,2,3]; arr.shift (); // 1 arr.shift (); // 2 console.log (ARR); // [3]
Unshift () 메소드는 Shift () 목적과 반대입니다. 배열의 프론트 엔드에 항목을 추가하고 새 배열의 길이를 반환 할 수 있습니다.
var arr = [1,2,3]; arr.unshift (4); // 길이를 반환합니다 4 arr.unshift (5); // 길이를 반환합니다. 5 console.log (ARR); // [1,2,3,4,5]
• 플립 및 종류의 배열
배열에서 제공하는 플립 메소드는 Reverse ()이며, 예를 들어 데이터 항목의 순서를 뒤집습니다.
var arr = [1,2,3]; arr.reverse (); Console.log (ARR); // [3,2,1]
Sort ()도 배열을 정렬 할 수 있지만 기본 정렬 방법은 크기가 아니지만 해당 문자열에 따라 하나씩 정렬됩니다. 정렬 () 메소드는 비교 함수를 받고 사용자 정의 정렬을 수행 할 수 있습니다.
함수 비교 (value1, value2) {return value1-value2; } var arr = [1,3,2,5,4]; arr.sort (비교); Console.log (ARR); // [1,2,3,4,5]• 배열 연결
Concat () 메소드는 현재 배열의 사본을 생성 한 다음 수신 된 매개 변수를 사본 끝에 추가하고 마지막으로 원래 배열이 변경되지 않은 채로 새로 제작 된 배열을 반환합니다.
var arr = [1,2,3]; var arr2 = arr.concat (4, [5,6]); Console.log (ARR); // [1,2,3] console.log (arr2); // [1,2,3,4,5,6]
• 배열 세분화
Slice () 메소드는 하나 또는 두 개의 매개 변수, 즉 반환 할 항목의 시작 및 종료 위치를 수신합니다. 하나의 매개 변수 만 필요한 경우 지정된 위치에서 배열 끝까지의 모든 항목이 반환됩니다. 두 개의 매개 변수가 수신되면 시작과 끝 위치 사이의 모든 항목이 반환되지만 예를 들어 엔드 위치를 포함하지 않는 항목은 다음과 같습니다.
var arr = [1,2,3,4,5]; var arr2 = arr.slice (1); // [2,3,4,5] var arr3 = arr.slice (1,3); // [2,3]
Slice () 메소드는 원래 배열에 영향을 미치지 않습니다.
• 스플 라이스 () 방법
Splice () 메소드는 매우 강력하기 때문에 개별적으로 요약하겠습니다. 세 가지 매개 변수를받을 수 있습니다. 첫 번째 매개 변수는 항목 추가 또는 삭제 위치를 나타내고, 두 번째 매개 변수는 삭제 될 항목 수를 나타내고, 두 번째 매개 변수는 배열에 추가 된 새 항목을 나타냅니다 (선택 사항). 다양한 매개 변수를 제공하면 삭제, 삽입 및 교체와 같은 기능을 다음과 같은 실현할 수 있습니다.
var arr = [1,2,3,4,5]; arr.splice (2,0,11,22); // 위치 2에서 두 개의 항목 삽입, console.log (ARR); // [1,2,11,22,3,4,5] arr.splice (2,2,33,44); // 위치 2에서 두 항목을 삭제하고 두 항목을 삽입 한 다음 삭제 된 항목 콘솔을 반환합니다 .Log (ARR); // [1,2,33,44,4,5] arr.splice (1,1); // 위치 1에서 하나의 항목을 삭제하고 삭제 된 항목 console.log (ARR)를 반환합니다. // [1,33,44,4,5]
• 배열 위치 방법
ES5는 두 가지 위치 방법을 제공합니다 : indexof ()와 lastIndexof (). 두 가지 방법 모두 발견 할 항목과 검색 시작점의 위치를 나타내는 인덱스 (선택 사항) 두 가지 매개 변수를받습니다. indexof () 메소드는 배열의 시작 부분에서 뒤쪽으로 보이고 LastIndexof ()는 배열 끝에서 기대합니다.
var arr = [1,2,3,4,4,4,3,2,1]; console.log (arr.indexof (4)); // 3 console.log (arr.lastindexof (4)); // 5 console.log (arr.indexof (4,4)); // 5 console.log (arr.lastindexof (4,4)); // 3
• 배열 반복 방법
ES5는 5 개의 반복 메소드를 정의하며, 각각 각 항목에서 실행할 함수 및 (선택 사항) 함수를 실행하는 범위 객체 (이에 영향을 미치는 값)를 정의합니다. 이 메소드에서 전달되는 함수는 배열 항목의 값, 배열의 항목 인덱스 및 배열 객체 자체의 세 가지 매개 변수를받을 수 있습니다.
그 중에서도 모든 () 메소드와 일부 () 메소드는 유사합니다. 모든 () 메소드의 경우, 전달 된 함수는이 메소드가 true를 반환하기 전에 각 항목에 대해 true를 반환해야합니다. 일부 ()의 경우, 전달 된 함수가 배열의 모든 항목에 대해 true를 반환하는 한 메소드가 true를 반환합니다. 예는 다음과 같습니다.
var arr = [1,2,3,4,4,4,3,2,1]; var EveryResult = Ar Console.log (EveryResult); // false, 모두 2 var someresult = arr.some (함수 (item, index, array) {return (item> 2);}); Console.log (Someresult); // 하나의 항목이 2보다 큰 경우필터 () 메소드는 주어진 함수에 따라 반환 된 배열에 항목을 포함할지 여부를 결정합니다.
var arr = [1,2,3,4,4,4,3,2,1]; var filterresult = arr.filter (함수 (항목, 색인, 배열) {return (item> 2);}); Console.log (FilterResult); // [3,4,5,4,3], 모든 값이 2보다 큰 배열을 반환합니다.map () 메소드는 배열의 각 항목에 대한 주어진 함수를 실행 한 다음 다음과 같은 각 항목 함수 결과로 구성된 배열을 반환합니다.
var arr = [1,2,3,4,4,4,3,2,1]; var mapresult = arr.map (함수 (항목, 색인, 배열) {return item*2;}); Console.log (Mapresult); // [2,4,6,8,10,8,6,4,2], 각 항목에 원래 배열에 2를 곱하고 반환마지막 메소드는 예를 들어 반환 값없이 배열의 각 항목에서 주어진 함수를 실행하는 foreach ()입니다.
var arr = [1,2,3,4,4,4,3,2,1]; arr.foreach (함수 (항목, 색인, 배열) {// 일부 작업 수행});• 배열 감소 방법
ES5는 또한 배열을 줄이기위한 두 가지 방법을 제공합니다. 두 방법 모두 배열의 모든 항목을 반복하고 최종 값을 반환합니다. Reduce ()는 첫 번째 항목에서 마지막 항목으로 점차적으로 가로 지르며 ReduceRight ()는 마지막 항목에서 첫 번째 항목의 끝까지 이동합니다. 두 함수 모두 이전 값, 현재 값, 항목의 인덱스 및 배열 객체의 네 가지 매개 변수를받습니다. 이 함수에 의해 반환 된 값은 다음 항목으로 첫 번째 매개 변수로 자동 전달됩니다. 예를 들어 Reduce () 메소드를 사용하여 배열에서 모든 항목의 합을 찾으십시오.
var arr = [1,2,3,4,5]; var sum = arr.reduce (function (pre, cur, index, array) {return pre+cur;}); Console.log (합); // 15콜백 함수가 처음 실행되면 Pre는 1이고 CUR은 2입니다. 두 번째는 PRE가 3 (1+2)이고 CUR은 3입니다.이 프로세스는 배열의 모든 항목에 액세스하고 결과를 반환합니다. reduceRight () 메소드는 READE ()와 유사하지만 방향은 반대입니다.
이 노트는 주로 고급 JavaScript 프로그래밍 및 온라인 리소스를 기반으로 요약됩니다. 불완전한 점이 있으면 지적하십시오.
위의 기사는 JavaScript Array Array Method (초보자를위한 반드시 읽기)를 기반으로합니다. 나는 당신이 당신에게 참조를 줄 수 있기를 바랍니다. 그리고 당신이 wulin.com을 더 지원할 수 있기를 바랍니다.