[JavaScript] 8. Array의 함수들

Zero·2023년 2월 12일
0

JavaScript

목록 보기
8/35

배열의 기본 함수

  • push() : 뒤에 삽입
  • pop() : 뒤에 삭제
  • unshift() : 앞에 삽입
  • shift() : 앞에 삭제

이후 특정 추가 함수

arr.splice(n,m) : 특정 요소 지움 (n: 시작 , m: 개수)

let arr = [1,2,3,4,5];
arr.splice(1,2);

console.log(arr); // [1,4,5];

arr.splice(n,m,x) : 특정 요소 지우고 추가하기

let arr = [1,2,3,4,5];
arr.splice(1,3,100,200);

console.log(arr); // [1,100,200,5];

--> m자리에 0을 넣으면 추가하고 싶은 위치에 추가할 수 있음. 또 splice 함수를 반환한 값을 변수에 넣어보면 삭제되고 남은 배열이 아닌 삭제된 것들이 반환되게 된다.


arr.slice(n,m) : n부터 m까지 반환 (m은 포함 x , 안쓰면 끝까지)

let arr = [1,2,3,4,5];
arr.slice(1,4) : // [2,3,4];

let arr2 = arr.slice(); // 아무것도 안쓰면 복사됨.
console.log(arr2); // [1,2,3,4,5] 

arr.concat(arr2,arr3 .. ) : 합쳐서 새배열 반환

arr.forEach(fn) : 배열 반복

let users = ['Mike' , 'Tom' , 'Jane'];

users.forEach((item , index , arr) => {
  	// .. 		
});

forEach 함수는 3개의 매개변수를 가지는데 ,
첫째는 해당 요소 ('Mike','Tom'....)이고 ,
둘째는 index( 0 , 1 , 2... ) 이고 ,
셋째는 해당 배열 자체를 의미함 , 보통 첫번째와 두번째만 사용

arr.indexOf / arr.lastIndexOf

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

arr.indexOf(3) // 2
// 인덱스 3부터 시작해서 3을 찾아라
arr.indexOf(3,3) // 7 

arr.lastIndexOf(3); // 7

arr.includes() : 포함하는지 확인

let arr = [1,2,3];

arr.includes(2); // true
arr.includes(8); // false

arr.find(fn) / arr.findIndex(fn)

  • indexOf와 다른점은 내부에 함수를 넣어 좀 더 복잡한 연산을 통해 반환값을 얻을 수 있음

  • 첫번째 true 값만 반환하고 끝임, 만약 없으면 undefined를 반환한다.

const result = arr.find((item) => {
	return item % 2 == 0;
});
  • find와 다르게 findIndex 는 인덱스만 반환함

arr.filter(fn)

만족하는 모든 요소를 배열로 반환해준다.

const arr = [1,2,3,4,5,6];

const result = arr.filter((item) => {
	return item % 2 == 0;
});

console.log(result); // [2,4,6];

arr.reverse() : 역순으로 재정렬

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

arr.reverse();  // [5,4,3,2,1]

arr.map(fn)

함수를 받아 특정 기능을 시행하고 새로운 배열을 반환

let userList = {
  {name: 'Mike' , age:30},
  {name: 'Jane' , age:20},
  {name: 'Tom' , age:10},
};

let newUserList = userList.map((user,index) => {
  	return Object.assign({}, user, {
    	isAdult: user.age > 19,
    });
});

console.log(newUserList);

/*
{name: 'Mike' , age:30, isAdult : true}
{name: 'Jane' , age:20, isAdult : true}
{name: 'Tom' , age:10, isAdult : false}
*/

arr.join()

배열 내의 문자들 합쳐 문자열로 만들기

let arr = ["안녕", "나는" , "철수야"];

// () 안에 쓰는 것이 인수임 , 아무것도 안주면 ,를 기반으로 합쳐짐
let result = arr.join();

console.log(result) // 안녕,나는,철수야

arr.split()

문자열 쪼개기

const users = "Mike,Jane,Tom,Tony";

const result = users.split(",");

console.log(result) // ["Mike","Jane","Tom","Tony"]; 

array 인지 확인하는 방법

  • Array.isArray(배열이름) 을 통해서 true/false로 반환을 받아 확인할 수 있다.

0개의 댓글