[JS] Array methods

Chaewon Yoon (Jamie)·2023년 4월 15일
0

[Today I learned]

목록 보기
28/32

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

  • 맨 뒤 요소 추가 arr.push(5) // [1, 2, 3, 4, 5]

  • 맨 뒤 요소 제거 const pop = arr.pop() // [1, 2, 3] & pop = 4

  • 맨 앞 요소 추가 arr.unshift(5) // [5, 1, 2 ,3 ,4]

  • 맨 앞 요소 제거 const shift = arr.shift(); // [2, 3, 4] & shift = 1

  • 배열에 특정 요소가 포함되어 있는지 .includes(element);

정렬

  • .sort();
  • .reverse();
function solution(stacks) {
// 여기에 코드를 작성하세요.
	return stacks.sort().reverse();	
}
solution(["typescript", "express", "node", "react"]);
// ["typescript", "react", "node", "express"]
solution(["docker", "graphql", "javascript"]);
// ["javascript", "graphql", "docker"]

스프레드 연산자 ...arr

function solution(prev, join) {
// 여기에 코드를 작성하세요.
	// const last = prev.shift();
	// prev.push(last)
	// prev.unshift(join);
	// return prev;
  
  const last = prev.shift();
  return [join, ...prev, last]
	
}

solution(["sudo", "임금"], "라떼");
// ["라떼", "임금", "sudo"];
solution(["아버", "광어", "안드로이드", "siri"], "피카츄");
// ["피카츄", "광어", "안드로이드", "siri", "아버"];

배열 자르기

  • arr.splice(시작 인덱스, 자를 개수, 해당 위치에 추가할 값);
    	_원본 배열 자체를 변경_
    const arr = [0, 1, 2, 3, 4];
    const 자른 거 = arr.splice(1, 2);	
    // arr: [0, 3, 4] & 자른 거: [1, 2]
  • arr.slice(시작 인덱스, 끝 인덱스);
    끝 인덱스 직전까지 잘라줌
    원본 배열은 안 바뀌고 결과만 줌
    const 자른 거 = arr.slice(1, 3);
    	// arr: [0, 1, 2, 3, 4], 자른 거 : [1, 2]
function solution(feature) {
// 여기에 코드를 작성하세요.
  // if(feature.includes("bug")){
  //   const indexOfBug = feature.indexOf("bug");  
  //   feature.splice(indexOfBug, 1);
  // }
  // return feature;
  
  const indexOfBug = feature.indexOf('bug');
  if(indexOfBug === -1){
    return feature;
  }
  // 버그 인덱스 전까지 요소들
  const arr1 = feature.slice(0, indexOfBug);
  // 버그 인덱스부터 끝까지 요소들
  const arr2 = feature.slice(indexOfBug + 1);
  // 배열 붙이기
  return arr1.concat(arr2);
  
  // spread 구문 사용 가능
	// return [...arr1, ...arr2];
}

solution(["code", "bug", "code"]); // ["code", "code"]
solution(["code", "code"]); // ["code", "code"]
문제에 따라 slice()와 splice()를 적절히 사용한다.
concat()은 배열을 이어붙일 때 사용한다.
spread연산자로 펼쳐서 이어붙여도 좋다.
profile
keep growing as a web developer!🧃

0개의 댓글