JavaScript 에서 배열 작업 상용 방법 - 학습 노트
14349 단어 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
이 글 은 자 바스 크 립 트 고급 프로 그래 밍 서적 을 참고 하고 있 습 니 다.
저 는 책 을 읽 은 후에 정리 와 본인 의 이 해 를 가 했 습 니 다. 여러분 에 게 도움 이 될 수 있어 야 합 니 다. 감사합니다.
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
기초 정리 - 1문자 (String) 숫자 (Number) 불린 (Boolean) null undefined 심볼 (Symbol) 큰정수 (BigInt) 따옴표로 묶어 있어야 함 Not-A-Number - 숫자 데이터 / 숫자로 표...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.