Computer >> 컴퓨터 >  >> 프로그래밍 >> JavaScript

JavaScript

  1. JavaScript로 2차원 배열의 숫자 그룹화 및 정렬하기

    문제 상황다음과 같은 숫자로 이루어진 2차원 배열이 있다고 가정해 보겠습니다.const arr = [ [1, 3, 2], [5, 2, 1, 4], [2, 1] ];이 배열에서 같은 숫자끼리 모아 각각 별도의 하위 배열로 묶고, 이렇게 만들어진 하위 배열들을 오름차순으로 정렬하는 JavaScript 함수를 작성해야 합니다.즉, 최종 결과물은 다음과 같은 형태가 되어야 합니다.const output = [ [1, 1, 1], [2, 2, 2], [3], [4], [5] ];해결

  2. JavaScript로 나이 배열 정렬하기 – 18세 미만 값을 앞으로 배치하는 방법

    문제 상황사람들의 나이를 담고 있는 숫자 배열이 주어졌을 때, 18세 미만(미성년자)의 나이를 모두 배열의 앞쪽으로 옮기는 JavaScript 함수를 작성해야 합니다. 이때 새로운 배열을 만드는 등 추가 메모리를 사용하지 않고 기존 배열 자체를 정렬해야 한다는 조건이 있습니다.해결 방법JavaScript의 Array.prototype.sort() 메서드는 비교 함수(comparator)를 인자로 받을 수 있습니다. 비교 함수는 두 요소 a와 b를 비교하여 정렬 순서를 결정하며, 동작 방식은 다음과 같습니다.반환값이 음수(-1)이면

  3. JavaScript에서 객체 배열을 연도별로 그룹화하는 방법

    문제 상황다음과 같이 연도(year)와 주(week) 정보를 담고 있는 객체 배열이 있다고 가정해 보겠습니다.const arr = [     {year: 2017, week: 45},     {year: 2017, week: 46},     {year: 2017, week: 47},     {year: 2017, week: 48},     {year: 20

  4. JavaScript 배열에서 가장 작은 숫자의 인덱스 찾는 방법

    JavaScript로 숫자로 이루어진 배열을 입력받아, 그 배열 안에서 가장 작은 숫자가 위치한 인덱스를 반환하는 함수를 작성해야 하는 경우가 있습니다.예를 들어 아래와 같은 배열이 주어졌다면, 최솟값은 -2이고 이 값의 인덱스인 6을 반환해야 합니다.구현 예제이 문제는 reduce() 메서드를 활용하면 깔끔하게 해결할 수 있습니다. 배열을 순회하면서 현재까지 발견된 최솟값과 그 인덱스를 함께 추적하는 방식입니다. { let { num, index } = acc; if(val < num){

  5. JavaScript에서 배열 내 가장 가까운 값 찾는 방법

    JavaScript에서 숫자 배열과 목표 숫자를 인자로 받아, 배열 안에 있는 값 중 두 번째 인자로 전달된 숫자와 가장 가까운 값을 반환하는 함수를 작성해야 하는 경우가 종종 있습니다.이 문제는 reduce() 메서드를 활용하면 간결하게 해결할 수 있습니다. 배열을 순회하면서 각 요소와 목표 숫자 사이의 절대적인 차이를 계산하고, 그 차이가 기존에 기록된 최소 차이보다 작으면 해당 값과 인덱스를 갱신하는 방식입니다.예제 코드아래 코드를 살펴보겠습니다.const arr = [3, 56, 56, 23, 7, 76, -2, 345, 4

  6. JavaScript에서 같은 숫자로 시작하는 문자열 그룹으로 묶는 방법

    문자열 형태의 숫자들로 이루어진 배열이 있다고 가정해 보겠습니다.const arr = [1.1,1.2,1.3,2.1,2.2,3.1,3.2,3.3,4.1,4.2];여기서 우리가 작성해야 할 것은 이러한 배열을 입력받아, 소수점 앞의 숫자(첫 번째 숫자)가 같은 문자열들을 하나의 하위 배열로 묶어주는 JavaScript 함수입니다.따라서 함수의 최종 출력 결과는 다음과 같은 형태가 됩니다.const output = [[1.1,1.2,1.3],[2.1,2.2],[3.1,3.2,3.3],[4.1,4.2]];구현 코드 예시이를 구현한 코드는

  7. JavaScript에서 단어 배열을 기반으로 문장 속 특정 단어를 모두 치환하는 방법

    이 글에서는 하나의 문자열과 문자열 배열을 인수로 받는 JavaScript 함수를 작성하는 방법을 알아보겠습니다.이 함수가 반환해야 할 값은 원본 문장에서 배열에 포함된 단어가 등장하는 모든 위치를 공백으로 치환한 새로운 문자열입니다. 또한 문제 해결에는 반드시 String.prototype.replace() 메서드를 활용해야 합니다.예제 코드전체 구현 코드는 다음과 같습니다. { let sentence = ; const regex = new RegExp(`\\b(${words.join(|)})\\b`, gi);

  8. JavaScript로 배열 요소의 누적 합계 구하기

    문제 소개다음과 같은 숫자 배열이 있다고 가정해 보겠습니다.const arr = [1, 2, 3, 4, 5, 6];여기서 우리가 작성해야 할 것은 이러한 배열을 입력받아, 원본 배열의 각 위치까지의 모든 요소를 합한 값들을 순서대로 담은 새로운 배열을 반환하는 JavaScript 함수입니다.따라서 위 배열에 대한 실행 결과는 다음과 같아야 합니다.const output = [1, 3, 6, 10, 15, 21];reduce()를 활용한 해결 방법배열의 내장 메서드인 reduce()를 사용하면 누적 합계를 깔끔하게 계산할 수 있습니다

  9. JavaScript reduce()로 누적 합계보다 큰 배열 요소만 골라내기

    숫자 배열을 입력받아, 현재 요소까지의 누적 합계보다 큰 값만 모아 새로운 배열로 반환하는 JavaScript 함수를 작성해야 합니다. 이 문제는 Array.prototype.reduce() 메서드를 활용해 해결하는 것이 조건입니다.문제 접근 방식reduce()는 배열을 순회하면서 하나의 누적값(accumulator)을 유지하는 메서드입니다. 여기서는 누적값을 지금까지 만난 요소들의 합으로 사용하고, 동시에 조건을 만족하는 요소를 결과 배열에 추가하는 방식으로 활용할 수 있습니다.핵심 로직은 다음과 같습니다.초기 누적값은 0으로 설

  10. JavaScript 2차원 배열에서 중복 값 제거하기

    리터럴 값으로 구성된 2차원 배열을 입력받아 처리하는 JavaScript 함수를 작성해야 하는 상황을 가정해 보겠습니다.이 함수는 원본 배열의 모든 요소를 그대로 유지하되, 앞서 이미 등장했던 중복 값은 제거한 새로운 배열을 반환해야 합니다. 즉, 각 값은 전체 배열에서 딱 한 번만 나타나도록 만드는 것입니다.예제이를 구현한 코드는 다음과 같습니다.const arr = [ [1,2,3,4,5], [3,4,6,7,8,2], [7,2,4,9,11,15], [10,12,3,7,11] ]; const remov

  11. 자바스크립트(JavaScript)로 두 문자열을 번갈아 가며 병합하는 방법

    문제 개요두 개의 문자열을 입력받아, 각 문자열에서 문자를 하나씩 번갈아 가며 추출해 하나의 새로운 문자열로 만들어 반환하는 자바스크립트 함수를 작성해야 합니다.예를 들어, 다음과 같은 두 문자열이 주어졌다고 가정해 보겠습니다.const str1 = abc;const str2 = def;기대 출력위 두 문자열을 번갈아 병합하면 결과는 다음과 같아야 합니다.const output = adbecf;구현 방법핵심 아이디어는 두 문자열을 각각 문자 배열로 분리한 뒤, 반복문을 돌면서 같은 인덱스의 문자를 순서대로 새 문자열에 이어 붙이는

  12. JavaScript 배열에서 특정 요소 제거하기 — 가변 인자로 여러 값 한 번에 삭제하는 방법

    다음과 같이 문자열 리터럴로 구성된 배열이 있다고 가정해 보겠습니다.const arr = [cat,dog,elephant,lion,tiger,mouse];우리가 작성해야 할 함수는 첫 번째 인자로 위와 같은 배열을 받고, 두 번째 인자부터는 제거하고 싶은 문자열을 원하는 개수만큼 전달받는 JavaScript 함수입니다.그리고 이 함수는 인자로 전달된 문자열과 일치하는 모든 요소를 새로운 배열을 만들지 않고 원본 배열 자체에서(in-place) 직접 제거해야 합니다.동작 원리핵심 아이디어는 다음과 같습니다.나머지 매개변수(Rest P

  13. JavaScript 배열에서 중복 객체를 손쉽게 제거하는 방법

    문제 상황JavaScript를 사용하다 보면 객체 배열 안에 완전히 동일한 내용의 객체가 중복으로 들어 있는 경우를 자주 만나게 됩니다. 예를 들어 다음과 같은 배열이 있다고 가정해 보겠습니다.const arr = [     {title: Assistant},     {month: July},     {event: Holiday},     {title: Assistant} ];위 배열에는 {

  14. JavaScript에서 다른 배열의 순서를 기준으로 배열 정렬하기

    JavaScript로 개발하다 보면 하나의 배열을 또 다른 배열에 담긴 순서를 기준으로 정렬해야 하는 경우가 종종 있습니다. 예를 들어 다음과 같은 두 개의 배열이 있다고 가정해 보겠습니다. const arr1 = [1, 3, 2, 4, 5, 6]; const arr2 = [1, 2, 5]; 문제 정의 우리가 만들 함수는 이렇게 주어진 두 개의 배열을 인자로 받아, arr1의 모든 요소를 포함하되 arr2의 순서에 맞게 정렬된 새로운 배열을 반환해야 합니다. 정렬 규칙은 다음과 같습니다. 두 배열에 모두 존재하는 요소는 arr2에

  15. JavaScript에서 배열 안의 중복된 하위 배열을 필터링하는 방법

    문제 상황다음과 같이 동일한 구조의 하위 배열이 여러 번 반복되어 포함된 2차원 배열이 있다고 가정해 보겠습니다.const arr = [ [ Serta, Black Friday ], [ Serta, Black Friday ], [ Simmons, Black Friday ], [ Simmons, Black Friday ], [ Simmons,

  16. JavaScript에서 이름을 첫 글자 기준으로 그룹화하는 방법

    JavaScript를 사용하다 보면 배열에 담긴 데이터를 특정 기준으로 묶어야 하는 경우가 자주 발생합니다. 이번 글에서는 이름 목록을 첫 글자(알파벳) 기준으로 그룹화하는 방법을 알아보겠습니다.문제 상황예를 들어, 다음과 같은 이름 배열이 있다고 가정해 보겠습니다.const arr = [Simon, Mike, Jake, Lara, Susi, Blake, James];이 배열을 입력받아 각 그룹의 정보를 담은 객체 배열을 반환하는 함수를 작성해야 합니다. 반환되는 객체는 다음 두 가지 속성을 가져야 합니다.letter → 이름을 그

  17. JavaScript 배열 객체 순회하며 특정 속성 합계 구하는 방법

    JavaScript를 다루다 보면 객체로 이루어진 배열에서 특정 속성값을 모두 더해야 하는 경우가 자주 발생합니다. 예를 들어, 여러 항목의 duration 값을 합산해 총 시간을 구하는 상황이 대표적입니다.문제 상황다음과 같이 여러 개의 객체를 담고 있는 배열이 있다고 가정해 보겠습니다.const arr = [ { duration: 10, any: fields }, { duration: 20, any: other fields }, { du

  18. JavaScript에서 배열 조합으로 빈도 맵(Frequency Map) 생성하는 방법

    여러 개의 숫자 배열을 입력받아, 각 요소와 요소들의 부분 조합이 전체 배열에서 몇 번 등장했는지를 집계한 빈도 맵(frequency map) 객체를 반환하는 JavaScript 함수를 작성해야 합니다. 문제 이해하기 예를 들어 다음과 같은 배열들이 있다고 가정해 보겠습니다. const a = [23, 45, 21], b = [45, 23], c = [21, 32], d = [23], e = [32], f = [50, 54]; 각 배열에서 만들 수 있는 모든 부분 조합(단일 요소부터 전체 요소 조합까지)을 구한 뒤, 동일한 조합이

  19. JavaScript로 배열의 모든 조합 합계 구하는 방법

    JavaScript에서 숫자 배열을 첫 번째 인수로, 그리고 숫자 n을 두 번째 인수로 받는 함수를 작성해야 하는 경우가 있습니다. 이때 n은 항상 배열의 길이보다 작거나 같다고 가정합니다.이 함수는 원본 배열에서 길이가 n인 모든 가능한 부분 배열(조합)의 요소 합계를 담은 배열을 반환해야 합니다.문제 예시입력이 다음과 같다면:const arr = [2, 6, 4];const n = 2;출력은 다음과 같아야 합니다:const output = [8, 10, 6];위 결과는 배열 [2, 6, 4]에서 길이 2인 조합인 [2, 6],

  20. JavaScript에서 다른 배열에 존재하지 않는 값 추출하는 방법

    두 개의 배열이 주어졌을 때, 첫 번째 배열에는 arr1과 같은 리터럴 값들이 들어 있고, 두 번째 배열인 arr2에는 특정 리터럴 값을 매핑하는 객체들이 들어 있습니다.이때 두 배열을 인자로 받아, arr2의 객체들에 의해 매핑되지 않은 arr1의 모든 요소를 배열로 반환하는 JavaScript 함수를 작성해야 합니다.예제 코드아래 코드를 살펴보겠습니다.const arr1 = [111, 222, 333, 444]; const arr2 = [     { identifier: 111 },  

Total 5929 -컴퓨터  FirstPage PreviousPage NextPage LastPage CurrentPage:78/297  20-컴퓨터/Page Goto:1 72 73 74 75 76 77 78 79 80 81 82 83 84