Javascript 배열 기초

최정민·2021년 7월 12일
0

JavaScript

목록 보기
6/9
post-thumbnail

배열조작하기

1.요소 추가

1-1. 인덱스를 이용해 요소 추가

let fruit= [];  //요소가 없는 배열
fruit[0]="lemon";
fruit[1]="mango";
fruit[2]="peach";
fruit[5]="melon";

결과 👉🏻[ 'lemon', 'mango', 'peach', undefined, undefined, 'melon' ]

fruit라는 변수에 빈 배열에 그리고 요소를 하나씩 추가할 수 있다.
할당되지않는 자리에는 할당되지않았기에 undefined 가 들어간다.

1-2. push / unshift 메소드 이용

push() , unshift()

  • push 는 배열의 마지막 부분, 즉 꼬리에 요소들을 추가한다.
let fruit= ['lemon', 'mango', 'peach'];
fruit.push("melon","blueberry");
console.log(fruit);

결과 👉🏻 [ 'lemon', 'mango', 'peach', 'melon', 'blueberry' ]

  • unshift는 배열의 맨 앞부분, 즉 머리 부분에 요소를 추가한다.
let fruit= ['lemon', 'mango', 'peach'];
fruit.unshift("melon","blueberry");
console.log(fruit);

결과 👉🏻 [ 'melon', 'blueberry', 'lemon', 'mango', 'peach' ]

2.요소 제거

pop 메소드

pop 메소드는 마지막 요소가 제거되고, 마지막 요소의 값을 반환한다.

let fruit= ['lemon', 'mango', 'peach'];
let removeFruit=fruit.pop();
console.log(fruit);
console.log(removeFruit);

결과 👇🏻
[ 'lemon', 'mango' ]
'peach'


divideArrayInHalf 함수구현

  • divideArrayInHalf 함수는 array를 인자로 받습니다. 이 array는 숫자 값으로 만 구성되어 있으며 총 5개의 요소(element)들로 구성되어 있습니다.
  • divideArrayInHalf 함수는 인자로 들어온 array 로 부터 새롭게 구성된 배열 result 을 리턴합니다.
  • array 요소들 중 10과 같거나 작은 값의 요소들은 result의 맨 앞으로, 10보다 큰 값의 요소들은 result의 맨 뒤로 재구성된 배열을 리턴 해주세요.
  • 재구성이 되는 순서는 array의 맨 뒤 요소부터 맨 앞 요소까지 입니다. 즉, 배열의 뒷 요소 부터 재구성을 진행해주세요.
  • 예를 들어, 인자로 들어오는 array가 다음과 같을 때,
       [1, 20, 10, 5, 100]
    result 배열이 만들어 지는 순서는 다음과 같습니다.
    • [100]
    • [5, 100]
    • [10, 5, 100]
    • [10, 5, 100, 20]
    • [1, 10, 5, 100, 20]
      따라서 아래와 같은 result가 리턴 되어야 합니다.
[1, 10, 5, 100, 20]

나의 풀이 😛

function divideArrayInHalf(array){
  let count=array.length;
  let result=[]               //재구성될 배열
  for (let i=0;i<count;i++){
    let num=array.pop()   //마지막 요소부터 재구성하기 위해
    if(num <=10) {    //10보다 같거나 작으면 맨앞으로 재구성
      result.unshift(num);}
    else {result.push(num);}   //10보다 크면 맨 뒤로
}
  return result;
 }
console.log(divideArrayInHalf([1, 20, 10, 5, 100]))

결과 👉🏻 [ 1, 10, 5, 100, 20 ]

profile
나 다운 것, 가장 아름다운 것

0개의 댓글