Array의 다양한 JS 작업 요약

高洛峰
풀어 주다: 2016-12-03 14:45:59
원래의
1103명이 탐색했습니다.

JS 코드를 작성할 때 Array는 가장 자주 사용되어야 합니다. 일상적인 프로젝트에서는 Array를 통해 많은 데이터를 저장하고 조작할 수 있습니다. Object 외에도 Array 유형은 js에서 가장 일반적으로 사용되는 유형이어야 합니다.

오늘은 Array의 간단하고 기본적인 조작 몇 가지를 요약하고, 기본 지식도 정리하겠습니다.

1. 배열 생성 방법(배열에 대해서는 바로 아래에서 다루겠습니다)

배열을 생성하는 방법은 크게 두 가지가 있는데, 첫 번째는 배열 생성자를 사용하는 것이고, 두 번째는 배열 리터럴 표현을 사용합니다.

1. 배열 생성자를 사용합니다.

예: var arr = new Array();

배열의 길이를 미리 알고 있으면 다음을 전달할 수도 있습니다. 생성자 길이에 직접 적용됩니다.

예: var arr = new Array(20);

배열에 포함되어야 하는 항목을 알고 있는 경우 배열에 포함되어야 하는 항목을 실행 중에 직접 전달하면 됩니다. 건설.

예: var arr = new Array(1,2,3);

2. 배열 리터럴 표현을 사용합니다.

예: var arr = [1,2 ,3,4];

var arr2 = [];

2. 배열 연산

1. 스택 방식과 대기열 방식

1) 스택 작동 방식: 선입선출 원칙----배열의 꼬리를 다시 추가하여 데이터 항목을 추가한 다음 배열의 꼬리에서 꼬리 데이터 항목을 가져옵니다

push() ;----즉, 데이터 항목 추가 배열의 끝부분에서 이 메소드의 매개변수 수를 사용자 정의할 수 있습니다.

pop();---이 메소드는 마지막 데이터를 가져오는 것입니다. 배열의 항목인 경우 이 함수는 매개변수를 전달할 필요가 없습니다.

예:

var colors = new Array();//배열 만들기
var count = colors .push("red","green");//두 항목 푸시
console.log(count)

var color = ["red","black"]; .push("brown");//다른 항목 푸시
color [3]="yellow"; //항목 추가
console.log(color)
console.log(color.push ("blue"));
console.log(color.pop ());//마지막 항목 가져오기



2) Queue 작업 방법: 첫 번째- 인선출 원칙---배열 항목의 헤드에서 데이터를 삽입하고 가져와서

push()를 시뮬레이션합니다.--배열의 끝에 데이터 항목을 추가합니다.

>shift();---배열의 헤드 항목에 대한 데이터 정보를 가져옵니다.

unshift();-shift와 완전히 반대이며, 배열의 헤드에 데이터 항목 정보를 삽입합니다. 🎜>

var colorArr = new Array();//배열 만들기

colorArr.push( "red","yellow");//두 항목 푸시

console.log(colorArr)

var length = colorArr.push("blue");
console.log(length);

var item = colorArr.shift();//첫 번째 항목 가져오기
console. log(item);
console.log(colorArr.length);



2. 배열 감지 및 확인

우리는 일상적인 프로젝트 개발에서 종종 객체가 배열인지 판단하는 문제(함수 매개변수 전달 시), 객체가 배열인지 판단하면 다음과 같은 두 가지 방법이 있습니다

1) 첫 번째 방법

2) 두 번째 방법

  if(value instanseof Array){
   }
로그인 후 복사

3. 구체적인 프로그래밍 예시

1) 요소 추가(배열 끝에 요소 추가)
  if(Array.isArray(value)){
   }//该方法只使用与高版本的浏览器:IE9+、Firefox4+/Chrome
로그인 후 복사

요소 항목 추가 배열 arr의 끝까지. arr 배열을 직접 수정하지 마세요. 결과는 새 배열을 반환합니다.

방법 1: Slice()와 push() 결합

방법 2: 일반적인 반복 복사

function append(arr, item) { 
  var newArr = arr.slice(0); // slice(start, end)浅拷贝数组 
  newArr.push(item); 
  return newArr; 
};
로그인 후 복사

방법 3: concat 사용

function append(arr, item) { 
  var length = arr.length, 
    newArr = []; 
  
  for (var i = 0; i < length; i++) { 
    newArr.push(arr[i]); 
  } 
  
  newArr.push(item); 
  
  return newArr; 
};
로그인 후 복사

2) 요소 추가(임의의 위치에 요소 추가)

배열 arr의 인덱스에 요소 항목을 추가합니다. 배열 arr을 직접 수정하지 마십시오. 결과는 새 배열이 됩니다.
function append(arr, item) { 
  return arr.concat(item); 
}
로그인 후 복사

방법 1: 일반적인 반복 복사 사용

방법 2: Slice() 및 splice() 결합

function insert(arr, item, index) { 
  var newArr=[]; 
  for(var i=0;i<arr.length;i++){ 
    newArr.push(arr[i]); 
  } 
  newArr.splice(index,0,item); 
  return newArr; 
}
로그인 후 복사

방법 3: concat() 및 splice () 결합

function insert(arr, item, index) { 
  var newArr=arr.slice(0); 
  newArr.splice(index,0,item); 
  return newArr; 
}
로그인 후 복사

3. 요소 삭제(배열의 마지막 요소 삭제)

배열 arr의 마지막 요소를 삭제합니다. 배열 arr을 직접 수정하지 마십시오. 결과는 새 배열이 됩니다.
function insert(arr, item, index) { 
  var newArr=arr.concat(); 
  newArr.splice(index,0,item); 
  return newArr; 
}
로그인 후 복사

방법 1: 일반 반복 복사 사용

방법 2: concat()과 pop() 결합

function truncate(arr, item) { 
  var newArr=[]; 
  for(var i=0;i<arr.length-1;i++){ 
    newArr.push(arr[i]); 
  } 
  return newArr; 
}
로그인 후 복사

4. 요소 삭제 요소)

배열 arr의 첫 번째 요소를 삭제합니다. 배열 arr을 직접 수정하지 마십시오. 결과는 새 배열이 됩니다.
function truncate(arr) { 
  var newArr = arr.concat(); 
  newArr.pop(); 
  return newArr; 
}
로그인 후 복사


방법 1: 일반 반복 복사 사용

방법 2: concat() 및 Shift() 결합

function curtail(arr) { 
  var newArr=[]; 
  for(var i=1;i<arr.length;i++){ 
    newArr.push(arr[i]); 
  } 
  return newArr; 
}
로그인 후 복사

방법 3: 슬라이스( )

function curtail(arr) { 
  var newArr = arr.concat(); 
  newArr.shift(); 
  return newArr; 
}
로그인 후 복사

5. 배열 병합

배열 arr1과 배열 arr2를 병합합니다. 배열 arr을 직접 수정하지 마십시오. 결과는 새 배열이 됩니다.
function curtail(arr) { 
  return arr.slice(1); 
}
로그인 후 복사

방법 1: 일반적인 반복 복사 사용

방법 2: concat() 메서드

function concat(arr1, arr2) { 
  var newArr=[]; 
  for(var i=0;i<arr1.length;i++){ 
    newArr.push(arr1[i]); 
  } 
  for(var j=0;j<arr2.length;j++){ 
    newArr.push(arr2[j]); 
  } 
  return newArr; 
}
로그인 후 복사

방법 3: Slice()와 push() 결합

function concat(arr1, arr2) { 
  return arr1.concat(arr2); 
}
로그인 후 복사

5. 배열의 요소 제거

값이 item과 같은 배열 arr의 모든 요소를 ​​제거합니다. 배열 arr을 직접 수정하지 마십시오. 결과는 새 배열이 됩니다.
function concat(arr1, arr2) { 
  var newArr=arr1.slice(0); 
  for(var i=0;i<arr2.length;i++){ 
    newArr.push(arr2[i]); 
  } 
  return newArr; 
}
로그인 후 복사

방법 1: splice() 방법

방법 2: push() 방법

function remove(arr, item) { 
      var newArr = arr.slice(0); 
      for(var i=0; i<newArr.length; i++) { 
        if(newArr[i] == item) { 
          newArr.splice(i, 1); 
        } 
      } 
      return newArr; 
    } 
    var arr = [1,2,3,4,2]; 
    var item = 2; 
    console.log(remove(arr, item)); 
    console.log(arr);
로그인 후 복사

function remove(arr,item){ 
  var newarr = []; 
  for(var i=0;i<arr.length;i++){ 
    if(arr[i] != item){ 
      newarr.push(arr[i]); 
    } 
  } 
  return newarr; 
}
로그인 후 복사
관련 라벨:
js
원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
최신 이슈
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿
회사 소개 부인 성명 Sitemap
PHP 중국어 웹사이트:공공복지 온라인 PHP 교육,PHP 학습자의 빠른 성장을 도와주세요!