1_ 배열 :
● 배열 vs 객체 선언법 :
- 객체 : let Object = { 속성 : (속성)값 , .... , 속성 : (속성)값 } ;
- 배열 : let Array = [ 요소1, 요소2 , .... , 요소n ];
2_ 출력법 //객체와 매우 비슷하다.
● for(let 변수 in 배열이름) console.log(배열이름[ 변수 ]);
3_ 사실 배열 ⊂ 객체 :
● " typeof 배열이름 " 를 출력해보면 ? => Object 출력
● 어쩌라고? => 그래서 객체뿐만 아니라 배열도, Pop(), Push(), sort() 등등의 속성 메소드의 여러기능들이 있다.
4_ 객체 / 배열의 속성 메소드들: //Date객체의 get????() , set????()와 같은 것
● length //얘는 속성메소드가 아닌 속성값
- 정의 : 유효원소개수를 반환
- 호출법 : 객체/배열이름.length
()|| 객체/배열이름[' length ']
● splice (삭제하고 싶은 인덱스)메소드 // 원소 삭제 메소드
- 정의 : 배열/
객체의 원하는 인덱스의 원소 삭제 메소드 - 호출법1 : 배열이름 + .splice(원하는 인덱스 값);
- 호출법2 : 배열이름 + .splice(원하는 인덱스 값(시작범위) , 삭제하고 싶은 원소개수)
- 호출법3 : 배열이름 + .splice(startIndex,deletecount,추가하고싶은 배열값)
ex_ array.splice(3,5); //4번째 ~ 8번째원소들 삭제
ex_ array.splice(3,2, '하기싫어'); //4번째, 5번째원소 삭제 후, '하기싫어'값을 배열에 추
※객체의 삭제 방법 : delete 예약어 + 객체.해당삭제속성명
● ★배열 원소 추가메소드 : splice (추가하고 싶은 자리의 인덱스 , 0 , 추가할 원소값)
연습 :
//배열에 첫번째 원소 삭제
array.splice(0,1);
//배열에 마지막 원소 삭제
array.splice(array.length-1,1);
//배열에 첫번째 원소 추가
array.splice(0,0,firstElement);
//배열에 마지막 원소 추가
array.splice(array.length-1,0,lastElement);
● 배열 원소 검색 메소드 :
1_ 배열이름 + .indexOf(value)
- 정의 : 배열에 대하여 value원소가 있는지 검색 메소드
- 반환값 :
Case1_ 찾았다면, => 해당 value원소가 있는 index를 반환
Case2_ 못찾았다면, => -1를 반환
- ★맨 처음 인덱스부터 순서로 검색
2_ 배열이름 + .lastIndexOf(value)
- ★마지막인덱스부터 역순서로 검색
3_ 있는지 여부만 검색하는 메소드 : 배열이름 + .includes(value)
반환값 : true / false
● 다른 부수적인 배열 객체의 속성 메소드 :
- 원소 삭제 관련(첫번째, 마지막)
①.배열의 첫번째 원소 삭제 메소드 :배열이름 + .shift() :
②. 배열의 마지막 원소 삭제 메소드 : 배열이름 + pop(); // ㅎㅇ pop()
- 원소 추가 관련 (첫번째, 마지막)
①.배열의 첫번째에 value 원소 추가 메소드 :배열이름 + .unshift(value) :
②. 배열의 마지막에 value 원소 추가 메소드 : 배열이름 + push(value); // ㅎㅇ push()
- 뒤집기 메소드 : 배열이름 + .reverse()
5_ 객체와 for => for ( in ) vs 배열과 for => for(변수 of 배열이름 )
6_2차원 배열보다 ★"객체 내부 속성명 : 배열형태값"
이유 : 2차원배열은 인덱스 순서지만, 객체 내부 배열들의 순서도 정렬 가능하며, 그 배열들의 의미도 메모가능
'웹프로그래밍 > JavaScript' 카테고리의 다른 글
(7)[부록]스프린트_테스트 대비 (2) | 2024.10.02 |
---|---|
(6)Codeit_JavaScript기초강좌_6장(연습문제 해설노트 작성하기) (4) | 2024.10.02 |
(4)Codeit_JavaScript기초강좌_4장(작성중..) (0) | 2024.10.02 |
(3)Codeit_JavaScript기초강좌_3장 (0) | 2024.10.01 |
(2)Codeit_JavaScript기초강좌_2장(작성중) (0) | 2024.09.30 |