JavaScript) 배열 메소드1(Array methods)

이윤동·2022년 11월 24일
0

Array

  • psuh() : 뒤에 삽입
  • 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) : 특정 요소 지우고 추가

x자리에 추가할 요소들을 적으면 됨

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

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

let arr = ["나는", "철수", "입니다"];
arr.splice(1, 0, "대한민국", "소방관");
// ["나는", "대한민국", "소방관", "철수", "입니다"]

arr.splice() : 삭제된 요소 반환

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

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

arr.slice(n, m) : n부터 m까지 반환

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

let arr2 = arr.sliece();
console.log(arr2); // [1,2,3,4,5]

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

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

arr.forEach(fn) : 배열반복

함수를 인수로 받음

그 함수는 세개의 매개변수

  1. 해당요소(item)
  2. 인덱스(index)
  3. 해당배열(arr)
let users = ['Mike', 'Tom', 'Jane'];
users.forEach((item, index, arr) => {
	console.log(`${index + 1}. ${name}`);
});

arr.indexOf / arr.lastIndexOf

발견하면 해당요소의 인덱스를 반환하고, 없으면 -1을 반환

let arr = [1,2,3,4,5,1,2,3];
arr.indexOf(3); // 2
arr.indexOf(3,3); // 7 , 두번째 인수는 시작위치
arr.lastIndexOf(3); // 7

🙋‍♂️질문 : arr.indexOf(3,3); // 7 , 두번째 인수는 시작위치, 뭔 소린지 모르겠어요

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

let arr = [1,2,3];
arr.includes(2); //true
arr.includes(8); //false

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

첫번째 true 값만 반환하고 끝

만약 없으면 undefined를 반환

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

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

console.log(result);

arr.filter(fn) : 조건을 만족하는 모든 요소를 배열로 반환

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: 27},
	{ name: "Tom", age: 10},
];

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

console.log(newUserList);
console.log(userList);

배열을 합쳐서 문자열 만들기

// join, split

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

let result = arr.join(" ");

console.log(result);

// split
const users = "Mike,Jane,Tom,Tony";
const result = users.split(",");
console.log(result);

let str = "Hello, My name is Mike.";
const result = str.split("");

console.log(result):
profile
이윤동

0개의 댓글