Notice
Recent Posts
Recent Comments
Link
«   2025/04   »
1 2 3 4 5
6 7 8 9 10 11 12
13 14 15 16 17 18 19
20 21 22 23 24 25 26
27 28 29 30
Tags more
Archives
Today
Total
관리 메뉴

개발의변화

자바스크립트 3. 배열 본문

카테고리 없음

자바스크립트 3. 배열

refindmySapporo 2021. 9. 28. 12:27
반응형

let arr = new Array() ;

let arr = [] ;

let fruits = ["사과", "오렌지", "자두"];

fruits[0], fruits[1], fruits[2]

배열 요소에 여러 가지 자료형이 섞여 있을 수도 있다.

let arr = ['사과', {name: '이보라'']

pop 배열 맨 끝 요소를 제거하고 , 제거한 요소를 반환 각 요소는 기존 인덱스 유지 실행속도 빠름

push 배열 끝에 요소를 추가

shift 배열 앞 요소를 제거하고, 제거한 요소 반환

unshift 배열 앞 요소를 추가

배열은 키가 숫자

반복문

for (let i=0; i<arr.length; i++)

for (let fruit of fruits) for of를 사용하면 현재 요소의 인덱스만 얻을 수 있음 

for in 은 배열도 객체형이기 때문에 사용가능하다. 하지만 유서배열이란 객체와 섞이면 필요없는

프로퍼티들이 문제를 일으킬 수 있다 그래서 지양하는 편이 좋다

arr.splice(index[,deleteCout,elem1,....,elemN)

let arr = ["1", "2", "3"];

arr.splice(1,1) 인덱스 1부터 요소 한 개 제거

alert(arr)

slice문법

arr.slice([start], [end] )

start부터 end까지의 요소를 복사한 새로운 배열 반환

start와 end는 둘 다 음수인데 이땐 배열 끝에서부터 요소 개수를 의미

let arr = ["t","e","s","t"]

alert (arr.slice(1,3)) e,s

alert (arr.slice(-2))  s,t

concat 기존 배열의 요소를 통해 새로운 배열을 만들거나 기존 배열 추가

arr.concat(arg1,arg2)

forEach로 반복작업

arr.forEach 주어진 함수를 배열 요소 각각에 대해 실행

arr.indexOf(item,from)는 인덱스 from부터 시작해 item 요소를 찾는 것 요소를 발견하면

해당 요소의 인덱스 반환, 발견 못하면 -1을 반환

arr.lastIndexOf(itme,from)는 위 메서드와 동일한데 검색을 끝에서부터 시작한다는 점만 다르다

arr.includes(item,from)는 인덱스 from부터 시작해 item이 있는 지 검색 해당하는 요소가 발견

true 즉 boolean 연산자를 반환

let arr = [1,0,false];

alert(arr.indexOf(0)) 1

alert(arr.indexOf(false) 2

alert (arr.indexOf(null)) -1

alert (arr.includes(1)) true

 

find, findindex

객체로 이루어진 배열에서 특정 조건에 부합하는 객체를 배열 내에서 찾는 것

let result = arr.find(function(item,index,array) {

  true가 반환대면 반복을 멈추고 해당요소 반환

 조건에 해당하는 요소가 없으면 undefined 반환

}

let users = [

   {id:1 , name:"john"},

  {id: 2, name: "Pete"},

 {id: 3, name: "Mary"}

];

let user = users.find(item => item.id == 1 );

alert(user.name); 

 

find메서드는 함수의 반환  값을 true로 만드는 단 하나의 요소를 찾는다

조건을 충족하는 요소가 여러 개라면 arr.filter를 사용하면 된다

filter는 find와 문법이 유사하지만 조건에 맞는 요소 전체 담은 배열 반환 

let users = [ {id: 1, name: "John"}, {id: 2, name: "Pete"}, {id: 3, name: "Mary"} ]; // 앞쪽 사용자 두 명을 반환합니다. let someUsers = users.filter(item => item.id < 3);

lert(someUsers.length); // 2

let arr = [ 1, 2, 15 ]; arr.sort(function(a, b) { return a - b; }); alert(arr); // 1, 2,

forEach, for, for ..of

reduce는 새로운 배열 형태로 하나의 것 도출 시킴

let arr = [1,2,3,4,5];

let result = arr.reduce((sum,current) => sum + current, 0);

alert(result)

 

 

 

 

 

반응형