JavaScript 에서 배열 작업 상용 방법 - 학습 노트

14349 단어 JavaScript
JavaScript 에서 배열 작업 에 자주 사용 되 는 방법
1. 검 측 배열
1) 검사 대상 이 배열 인지, instanceof 연산 자 를 사용 합 니 다.
if(value instanceof Array)

{

//         

}

2) 대상 의 유형 을 가 져 와 object 형식 인지 비교 합 니 다. (이 방법 은 Object 인지 아 닌 지 만 검사 할 수 있 습 니 다. 추천 하지 않 습 니 다)
if(typeof(value)=="Object")

{

//         

}

3) 대상 이 배열 인지 확인 하고 Array. isArray () 방법 (ie9 +, fireforx 4 +, safari 5 +, opera 10.5 + 와 chrome 만 지원) 을 사용 합 니 다.
if(Array.isArray(value))

{

//         

}

2. 전환 방법
모든 대상 은 toLocaleString (), toString (), valueOf () 방법 을 가지 고 있 습 니 다.
 
배열 의 toString () 방법 을 호출 하면 배열 의 모든 값 의 문자열 형식 으로 연 결 된 쉼표 로 구 분 된 문자열 을 되 돌려 줍 니 다.
value Of () 를 호출 하여 되 돌려 주 는 것 인지, 아니면 배열 을 되 돌려 주 는 것 인지.
 
join () 방법: 구분자 로 사용 할 문자열 을 받 은 다음 모든 배열 항목 을 포함 하 는 문자열 을 되 돌려 줍 니 다.
var colors=["red","green","blue"];

alert(colors.join("||"));//red||green||blue

3. 창고 방법
스 택 은 LIFO (Last - In - First - Out, 후진 선 출) 의 데이터 구조 입 니 다.
JavaScript 는 스 택 과 유사 한 행 위 를 수행 하기 위해 배열 에 push () 와 pop 방법 () 방법 을 제공 합 니 다.
1): push () 방법 은 임의의 수량의 인 자 를 받 아들 여 배열 의 끝 에 하나씩 추가 하고 수 정 된 배열 의 길 이 를 되 돌려 줍 니 다.
2): pop () 방법 은 배열 의 끝 에서 마지막 항목 을 제거 하고 배열 의 length 값 을 줄 인 다음 에 제거 한 항목 을 되 돌려 줍 니 다.
var colors=new Array();//      

var count=colors.push("red","green");//    

alert(count);//2





count=colors.push("black");//     

alert(count);//3



var item=colors.pop();//      ,         

alert(item);//“black”

alert(colors.length);//2


push() , count . , count . 3 , push() 3.
pop() , , "black". , .

4. 대기 열 방법
스 택 데이터 구조의 접근 규칙 은 LIFO (Last - In - First - Out, 후진 선 출) 이 고 대기 열 데이터 구조의 접근 규칙 은 FIFO (First - In - First - Out, 선진 선 출) 입 니 다.
목록 의 끝 에 항목 을 추가 하고 목록 의 앞부분 에서 항목 을 제거 합 니 다.
JavaScript 는 대기 열 에 shift () 와 unshift () 방법 을 제공 합 니 다.
1): shift () 는 배열 의 첫 번 째 항목 을 제거 하고 변경 사항 을 되 돌려 주 며 배열 의 길 이 를 1 로 줄 입 니 다.
2): unshift () 는 배열 전단 에 임의의 항목 을 추가 하고 새 배열 의 길 이 를 되 돌려 줍 니 다.
 
push () 와 pop 방법, shift () 와 unshift () 방법 을 결합 하여 만 든 인 스 턴 스
var n=new Array("  ","  ");

            n.push("  ");//         ,       

            n.shift();//       ,     

            

            n.unshift("  ");//         

            n.pop();//           

            

            //         

            for(var i=0;i<n.length;i++)

            {

                console.log(n[i]);

            }
       //
   

5. 다시 정렬 하 는 방법
배열 에는 정렬 을 다시 할 수 있 는 두 가지 방법 이 존재 합 니 다: reverse () 와 sort ()
기본 적 인 상황 에서 sort () 방법 은 오름차 순 으로 배열 하 는 배열 항목 입 니 다. 즉, 가장 작은 값 은 맨 앞 에 있 고 가장 큰 값 은 맨 뒤에 있 습 니 다. 정렬 을 실현 하기 위해 sort () 방법 은 각 배열 항목 의 toString () 전환 방법 을 호출 합 니 다.
그 다음 에 비교 한 문자열 은 정렬 방법 을 확인 합 니 다. 즉, 배열 의 모든 항목 은 수치 입 니 다. sort () 방법 도 문자열 입 니 다. 다음 과 같 습 니 다.
    var values=[0,1,5,10,15];

            values.sort();//      

            alert(values);//0,1,10,15,5

sort () 방법 은 테스트 문자열 의 결과 에 따라 원래 의 순 서 를 바 꿉 니 다. 배열 5 는 10 비가 적 지만 문자열 을 비교 할 때 '10' 은 '5' 앞 에 있 기 때문에 배열 의 순서 가 수정 되 었 습 니 다. 이러한 정렬 방식 은 많은 경우 에 최 적 방안 이 아니 기 때문에 sort ()방법 은 비교 함 수 를 매개 변수 로 받 아들 여 어느 값 이 어느 값 앞 에 있 는 지 정할 수 있 습 니 다.
 
비교 함 수 는 두 개의 인 자 를 받 습 니 다. 만약 에 첫 번 째 매개 변수 가 두 번 째 앞 에 있 으 면 마이너스 하 나 를 되 돌려 줍 니 다. 만약 에 두 개의 매개 변수 가 같 으 면 0 을 되 돌려 줍 니 다. 어떻게 첫 번 째 매개 변수 가 두 번 째 에 있 으 면 정수 하 나 를 되 돌려 줍 니까? 다음은 간단 한 비교 함수 입 니 다.

function
compare(value1,value2) { if(value1<value2) { return -1; }else if(value1==value2) { return 0; }else { return 1; } } var values=[0,1,5,10,15]; values.sort(compare);// alert(values);//0,1,5,10,15

비교 함 수 를 sort () 방법 에 전달 한 후에 도 수 치 는 정확 한 상승 순 서 를 유지 합 니 다. 물론 비교 함 수 를 통 해 내림차 순 정렬 결 과 를 만 들 수도 있 습 니 다. 비교 함수 의 반환 값 만 교환 하면 됩 니 다.
 
주: value 1 < value 2 반환 - 1 은 정 서 를 나타 내 고, 1 은 역 서 를 나타 낸다.
물론 배열 의 원래 순 서 를 반전 시 키 려 면 reverse () 방법 을 사용 하 는 것 이 더 빠르다.
물론 수치 형식 이나 valuesOf () 방법 에 대해 서 는 수치 형식의 대상 유형 을 되 돌려 줍 니 다. 더 간단 한 비교 함 수 를 사용 할 수 있 습 니 다. 이 함 수 는 첫 번 째 값 으로 두 번 째 값 을 줄 이면 됩 니 다.
function compare(value1,value2)

{

return value1-value2;

}

6. 조작 방법
1): concat () 방법 은 현재 배열 의 모든 항목 을 기반 으로 새 배열 을 만 들 수 있 습 니 다.
concat () 방법 에 인 자 를 전달 하지 않 은 상태 에서 현재 배열 을 복사 하고 복사 본 을 되 돌려 줍 니 다. concat () 방법 에 전달 하 는 방법 은 하나 이상 의 배열 입 니 다.
이 방법 은 이 배열 의 모든 농담 을 결과 배열 에 추가 합 니 다. 전달 하 는 값 이 배열 이 아니라면 이 값 은 결과 배열 의 끝 에 간단하게 추 가 됩 니 다. 아래 열 을 보 세 요.
var colors=["red","green","blue"];

            var color2=colors.concat("yellow",["black","brown"]);

            alert(color2);//red,green,blue,yellow,black,brown

2): slice () 방법 은 현재 배열 의 하나 이상 의 항목 을 기반 으로 새 배열 을 만 듭 니 다.
slice () 방법 은 시작 과 끝 위 치 를 되 돌려 주 는 하나 또는 두 개의 인 자 를 받 을 수 있 습 니 다.
하나의 인자 만 있 는 상황 에서 slice () 방법 은 이 매개 변수 가 지정 한 위치 에서 현재 배열 의 끝 에 있 는 모든 항목 을 되 돌려 줍 니 다.
어떻게 두 개의 인자 가 있 습 니까? 이 방법 은 시작 과 끝 위치 사이 의 항목 을 되 돌려 줍 니 다. 그러나 끝 위 치 를 포함 하지 않 는 항목 입 니 다. slice () 방법 은 원본 배열 에 영향 을 주지 않 습 니 다. 다음은 열 을 보 겠 습 니 다.
var colors=["red","green","blue","yellow","black"];

            colors.split(1);//green,blue,yellow,black

            colors.split(1,4)//green,blue,yellow

 3): splice () 방법 은 아마 가장 강력 한 배열 방법 이 라 고 할 수 있 습 니 다. 여러 가지 용법 이 있 습 니 다.
splice () 의 주요 용 도 는 배열 의 중부 에 항목 을 삽입 하 는 것 이지 만 이 방법 을 사용 하 는 방식 은 다음 과 같은 세 가지 가 있다.
a: 삭제: 임의의 항목 을 삭제 할 수 있 습 니 다. 두 개의 인자 만 지정 하면 됩 니 다. 삭제 할 첫 번 째 항목 의 위치 와 삭제 할 항목 의 수 입 니 다.
열: splice (0, 2) 는 배열 의 앞 두 항목 을 삭제 합 니 다.
 
b: 삽입: 지정 한 위치 에 임의의 수량의 항목 을 삽입 할 수 있 습 니 다. 3 개의 인자 만 제공 해 야 합 니 다. 시작 위치, 0 (삭제 할 항목) 과 삽입 할 항목 입 니 다.
어떻게 여러 항목 을 삽입 해 야 하 는 지, 네 번 째, 다섯 번 째, 임의의 여러 항목 까지 다시 들 어 갈 수 있 습 니 다.
열: splice (2, 0, "red", "green") 는 현재 배열 의 위치 2 부터 문자열 "red" 와 "green" 을 삽입 합 니 다.
 
c: 교체: 지정 한 위치 에 임의의 수량의 항목 을 삽입 할 수 있 고 임의의 수량의 항목 을 삭제 할 수 있 습 니 다. 3 개의 매개 변 수 를 제공 해 야 합 니 다. 시작 위치, 삭제 할 항목 과 삽입 할 항목.
삽 입 된 항목 은 삭 제 된 항목 과 같 을 필요 가 없습니다.
열: splice (2, 1, "red", "green") 는 현재 배열 위치 2 의 항목 을 삭제 한 다음 위치 2 부터 문자열 "red" 와 "green" 을 삽입 합 니 다.
 
주: 삽입 과 교체 방식 이 같 고 차이 점 은 두 번 째 매개 변수 에 있 습 니 다. 0 은 삽입 이 삭제 되 지 않 음 을 나타 내 고 0 이상 은 삭제 할 수량 을 표시 합 니 다.
splice () 방법 은 항상 하나의 배열 로 돌아 갑 니 다. 이 배열 에는 원본 배열 에서 삭 제 된 항목 이 포함 되 어 있 습 니 다. (항목 을 삭제 하지 않 으 면 빈 배열 로 돌아 갑 니 다)
 
아래 열 은 상기 3 중의 splice () 방법 을 사 용 했 습 니 다. 다음 과 같 습 니 다.
var colors=["red","green","blue"];

            var removed=colors.splice(0,1);//     

            alert(colors);//green,blue

            alert(removed);//red,          

            

            removed=colors.splice(1,0,"yellow","orange");//   1    2   

            alert(colors);//green,blue,yellow,orange

            alert(removed);//       

            

            removed=colors.splice(1,1,"red","purple");//   1  2   ,     1   

            alert(colors);//green,red,purple,yellow,orange

            alert(removed);//yellow,           

 
7. 위치 방법
두 위치 방법: index Of () 와 lastIndex Of (), 이 두 가지 방법 은 모두 두 개의 인 자 를 받 습 니 다. 찾 을 항목 과 (선택 할 수 있 는) 7 시 위 치 를 찾 는 색인 을 표시 합 니 다.
1) index Of (): 배열 의 시작 (위치 0) 부터 뒤로 찾기
2) lastIndex Of (): 배열 의 끝 에서 앞으로 찾기
 
이 두 가지 방법 은 모두 찾 은 항목 이 배열 에 있 는 위 치 를 되 돌려 주거 나 찾 지 못 한 상태 에서 되 돌려 줍 니 다. - 1.
첫 번 째 매개 변수 와 배열 의 모든 항목 을 비교 할 때 전체 연산 자 를 사용 합 니 다. 즉, 찾 아야 할 항목 은 반드시 엄격하게 같 아야 한 다 는 것 입 니 다.
아래 에 이 두 가지 방법의 실례 를 썼 습 니 다. 다음 과 같 습 니 다.
var numbers=[1,2,3,4,5,4,3,2,1];

            alert(numbers.indexOf(4));//3         4  

            alert(numbers.lastIndexOf(4));//5          4  

            alert(numbers.indexOf(4,4));//5     4       4     

            alert(numbers.lastIndexOf(4,4));//3    4        4     

            

            

            var person={name:"ToNi"};

            var people=[{name:"ToNi"}];

            var morePeople=[person];

            alert(people.indexOf(person));//  -1       ,       

            alert(morePeople.indexOf(person));//  0

 
 
이 글 은 자 바스 크 립 트 고급 프로 그래 밍 서적 을 참고 하고 있 습 니 다.
저 는 책 을 읽 은 후에 정리 와 본인 의 이 해 를 가 했 습 니 다. 여러분 에 게 도움 이 될 수 있어 야 합 니 다. 감사합니다.

좋은 웹페이지 즐겨찾기