개인 맞 춤 형 javascript 의 배열 지식 포인트 (Only For Me)

5370 단어 JavaScript
먼저 농담 을 하 자. 1. 방금 수영 하 는 사람 을 보 았 는데 회사 에서 삼 아 여행 을 조직 한 것 이 생각 났 다. 사장 이 바다 에 뛰 어 들 고 여러 가지 몸부림 을 치 며 사장 의 첫 마디 를 건 져 냈 다. 나 는 내 가 수영 을 할 줄 아 는 것 을 기억한다.2. 며느리: 여보, 미안해. 내 가 새로 산 자전 거 를 부 딪 쳐 서 망 가 뜨 렸 어!남편: 괜찮아, 아가 야, 네가 무사 하면 맑 은 날 이 야!며느리: 여보, 너무 시적 이에 요.남편: 꺼 져!
배열 의 개념
javascript 배열 은 질서 있 게 집합 할 수 있 지만 자바 script 대상 의 특수 한 형식 에 속 합 니 다. 이것 은 매우 중점 적 인 정성 입 니 다.
배열 만 들 기
1.var a=new Array();//같다
2.var a=new Array(10); //길이 지정 배열
3.var a=new Array(1,2,“marry you”);
4.var a=[];
배열 은 동적 인 것 입 니 다. 먼저 배열 은 [] 를 통 해 배열 요 소 를 방문 할 수 있 습 니 다. 이 문법 을 사용 하면 배열 을 읽 고 쓸 수 있 습 니 다. 그 중에서 [] 내 에 있 는 것 은 232 비 마이너스 정수 가 속성 명 일 때 배열 은 자동 으로 length 를 유지 합 니 다.먼저 배열 의 색인 과 대상 의 속성 명 을 뚜렷하게 구분 하고 모든 색인 은 속성 명 이지 만 0 ~ 232 - 2 사이 의 정수 속성 명 만 색인 이다.
모든 배열 은 대상 입 니 다. 배열 대상 에 게 임의의 이름 의 속성 을 만 들 수 있 습 니 다.그러나 사용 하 는 속성 이 배열 의 색인 이 라면 배열 의 특수 행 위 는 length 속성 값 을 업데이트 해 야 합 니 다.
이것 은 javascript 배열 의 '경계 넘 기' 오류 개념 을 바로 잡 을 것 입 니 다. 배열 색인 이 길 이 를 초과 하면 오류 가 발생 하지 않 고 undefined 값 만 되 돌려 줍 니 다.
희소 수조 와 조밀 수조
개념 은 0 에서 시 작 된 불 연속 색인 을 포함 하 는 배열 입 니 다.length 속성 치가 원소 의 개수 보다 크다 는 것 도 이해 할 수 있다.그러면 정상 적 인 조밀 한 배열 보다 메모리 이 용 률 이 높 지만 검색 효율 은 거의 일치 합 니 다.
이 때 는 in 으로 측정 할 수 있 습 니 다.
var a1=[,,,];
0 in a1//false
배열 요소 의 추가 와 삭제
가장 간단 한 삭제 방식 은 var a = [1, 2, 4] 이다.a.length=0;
마찬가지 로 Object. defineProperty () 로 배열 length 속성 을 읽 기 전용 으로 바 꿀 수 있 습 니 다.
var a=[1,2,4];

Object.defineProperty(a,"length",{writable:false});

a.length=0;

console.log(a);

//[1, 2, 4]

push (1, 3, 4, 5, 7) / / 여러 요 소 를 한꺼번에 추가 할 수 있 습 니 다.
delete a [1] 는 배열 a 의 length 속성 을 수정 하지 않 습 니 다. 요소 위치 에 undefined 값 을 부여 하 는 것 과 같 습 니 다. 그러면 배열 을 바 꾸 는 것 도 희소 한 배열 이 됩 니 다.그래서 pop () 을 사용 해 야 합 니 다. 이 함 수 는 삭 제 된 요 소 를 되 돌려 줍 니 다.
배열 옮 겨 다 니 기
배열 을 옮 겨 다 니 며 for / in 또는 for 를 사용 합 니 다.전 자 를 옮 겨 다 니 는 것 은 일정한 순서 가 없 기 때문에 foreach (ECMAScript 5 에 추 가 된 함수) 나 for 로 대체 할 수 있 으 며, 동시에 옮 겨 다 니 는 것 이 가장 좋 은 캐 시 배열 길이 입 니 다. 예 를 들 어
for(var i=0,alength=a.length;i++){

//   

}



for(var i in a){

if(!a.hasOwnProperty(i)){

continue; //     

//   

}

}

배열 의 방법
일반적인 방법 으로 는 join () / reverse () / ort () / concat () / slice () / splice () / push () / pop () / unshift () / shift () / toString () / toLocalString () 이 있 습 니 다.
만약 당신 이 이상 에 대해 모두 알 고 있다 면, 나 는 그래도 그 중의 한 방법 을 말 하고 싶 습 니 다.
정렬 을 사용 하면 sort 가 빠 질 수 없습니다. 문자 에 따라 정렬 합 니 다. 숫자 를 만 나 거나 처 리 된 문자 에 대해 정렬 을 하면 어떻게 합 니까?
sort () 이 방법 은 익명 함 수 를 매개 변수 로 전송 할 수 있 습 니 다. 이 익명 함 수 는 우리 의 특수 한 요 구 를 만족 시 킬 수 있 습 니 다.
a=['a',"bug","Good","ccc"];

a.sort(function(s,t){

var a=s.toLowerCase();

var b=t.toLowerCase();

if(a<b) return -1;

if(a>b) return 1; 

return 0; 

});     

//["a", "bug", "ccc", "Good"]

 
ECMAScript 5 에 배열 방법 추가
foreach () / / 배열 을 옮 겨 다 니 며 순서대로 출력 합 니 다. break 하려 면;트 리 캐 치 로 보조 해 야 지.
map()// a=[1,2,3]; a.map(function(x){return x*x;}) //[1,4,9];
filter()//a=[5,3,4,5,6]; a.filter(function(x,i){return i%2==0});//[4,6]
every () / some () / reduce () / reduceRigth () / index Of () / lastIndex Of () 등 모 르 면 골 형 이 죠.
한 가지 말씀 드 리 고 싶 은 것 은 문자열 의 행동 이 배열 과 유사 하 다 는 사실 입 니 다.
예 를 들 면:
Array.prototype.filter.call("javascript",function(x){return x.match(/[^aeiou]/);}).join("");



//"jvscrpt"

종결 어
간단하게 말하자면 수조 가 보 여 준 많은 것들 의 본질은 사실 그것 이 대상 이기 때문에 결 정 된 것 이다.배열 의 대부분 방법 은 통용 된다. 이것 은 배열 대상 뿐만 아니 라 '클래스 배열 대상 에 도 효과 가 있다 는 것 을 의미한다. 예 를 들 어 문자열 행 위 는 문자 배열 과 유사 하 다. 괜찮다 고 생각한다 면 추천 하 자.

좋은 웹페이지 즐겨찾기