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

JavaScript

  1. JavaScript에서 동일한 속성 값 기준으로 객체 그룹화하기

    JavaScript를 사용하다 보면 배열 안의 여러 객체를 특정 속성 값 기준으로 묶어야 하는 경우가 자주 발생합니다. 이번 글에서는 unit 속성 값이 같은 객체들을 하나로 그룹화하고, 나머지 속성(brand)을 쉼표로 연결해 병합하는 방법을 알아보겠습니다.문제 상황다음과 같은 배열이 있다고 가정해 보겠습니다.const arr = [     {unit: 35, brand: CENTURY},     {unit: 35, brand: BADGER},  &n

  2. JavaScript – 반복되는 키를 가진 배열 값 합산하기

    실무에서는 다음과 같이 여러 개의 객체를 담고 있는 배열을 자주 다루게 됩니다.const arr = [ {ID-01:1}, {ID-02:3}, {ID-01:3}, {ID-02:5} ];이때 요구 사항은 동일한 키를 가진 객체들의 값을 하나로 합산하는 것입니다. 즉, 같은 ID끼리 묶어서 각각의 합계를 구해야 합니다.따라서 위 배열에 대한 최종 출력 결과는 다음과 같아야 합니다.const output = [{ID-01:4}, {ID-02:8}];접근 방법배열을 처음부터 끝까지 순회하면서, 각 객체의 키가

  3. 자바스크립트(JS) 배열을 객체로 변환하는 3가지 방법

    자바스크립트 개발을 하다 보면 객체 배열을 하나의 객체로 변환해야 하는 경우가 자주 발생합니다. 이 글에서는 id 속성을 키(key)로, name 값을 값(value)으로 사용하여 배열을 객체로 변환하는 여러 가지 방법을 예제와 함께 살펴봅니다. 문제 상황 다음과 같은 객체 배열이 있다고 가정해 보겠습니다. const arr = [     {id: 1, name: "Mohan"},     {id: 2, name: "Sohan"

  4. 자바스크립트에서 객체의 숫자 값을 정렬해 배열로 만드는 방법

    문제 소개다음과 같이 여러 개의 숫자 값을 가진 객체가 있다고 가정해 보겠습니다.const obj = {    key1: 56,    key2: 67,    key3: 23,    key4: 11,    key5: 88};이 객체를 입력받아 객체의 값들을 오름차순으로 정렬한 배열을 반환하는 자바스크립트 함수를 작성해야 하며, 최종적으로 다음과 같은 결과를

  5. JavaScript로 배열에서 첫 번째 중복 요소 찾기

    배열에서 가장 먼저 두 번 이상 등장하는 요소의 인덱스를 반환하는 함수를 작성해야 한다고 가정해 봅시다. 만약 배열에 중복된 요소가 하나도 없다면 -1을 반환해야 합니다. 또한 추가 메모리를 사용하지 않고 상수 공간(O(1)) 내에서 문제를 해결해야 한다는 조건이 있습니다.접근 방법이 문제를 해결하기 위해 for 반복문을 사용해 배열을 순회하면서, 각 요소에 대해 Array.prototype.lastIndexOf() 메서드를 활용해 해당 요소가 뒤쪽에서 다시 등장하는지 확인하는 방식을 사용할 수 있습니다.lastIndexOf()는

  6. JavaScript로 배열의 인접 요소 평균 구하기

    문제 정의 다음과 같은 숫자 배열이 있다고 가정해 보겠습니다. const arr = [3, 5, 7, 8, 3, 5, 7, 4, 2, 8, 4, 2, 1]; 우리가 작성해야 할 함수는 각 요소와 바로 앞에 있는 요소(선행 요소)의 평균값을 순서대로 담은 새로운 배열을 반환하는 함수입니다. 단, 첫 번째 요소는 앞에 위치한 요소가 없기 때문에 그 값 자체를 그대로 결과에 포함합니다. Array.prototype.map()을 활용한 풀이 이 문제는 Array.prototype.map() 메서드를 활용하면 매우 간결하게 해결할 수 있습

  7. JavaScript로 2차원 배열의 각 부분 배열에서 최댓값 추출하기

    문제 소개다음과 같이 숫자로 이루어진 2차원 배열(배열 안에 배열이 중첩된 형태)이 있다고 가정해 보겠습니다.const arr = [ [1, 16, 34, 48], [6, 66, 2, 98], [43, 8, 65, 43], [32, 98, 76, 83], [65, 89, 32, 4],];이 배열을 순회하면서 각 하위(내부) 배열에서 가장 큰 요소(최댓값)를 추출하고, 그 값들로만 구성된 새로운 배열을 반환하는 함수를 작성해야 합니다.즉, 위 배열에 대한 기대 결과는 다음과 같습니다.const output = [ 48, /

  8. JavaScript로 중첩 배열에서 최댓값 찾는 방법 (재귀 함수 예제)

    숫자가 임의의 깊이까지 중첩되어 들어 있는 배열이 주어졌을 때, 그 안에서 가장 큰 숫자를 찾아 반환하는 간단한 JavaScript 함수를 작성한다고 가정해 보겠습니다.const arr = [ 15, 24, [ 29, 85, 56, [ 36, 14, 6, 98, 34, 52 ], 22 ], 87, 60 ];예를 들어 다음과 같은 입력 배열이 주어진다면,const arr = [ 34, 65, 67, [ 43

  9. JavaScript로 배열 길이를 유지하며 중복 항목 제거하고 빈 문자열 채우기

    이번 포스팅에서는 배열의 전체 길이는 그대로 유지하면서 중복된 요소를 모두 제거하고, 제거된 자리만큼 빈 문자열()을 배열 끝에 채워 넣는 함수를 JavaScript로 작성하는 방법을 알아보겠습니다.문제 정의함수는 하나의 배열을 입력으로 받아 다음과 같이 동작해야 합니다.배열에서 중복된 값들을 모두 제거합니다.제거된 중복 값의 개수만큼 빈 문자열을 배열 끝에 추가하여 최종 길이가 원래 배열과 같도록 만듭니다.예를 들어, 중복으로 인해 4개의 값이 제거되었다면, 해당 값들을 삭제한 후 배열 끝에 빈 문자열 4개를 이어 붙여야 합니다.

  10. JavaScript에서 값이 배열인 객체와 배열을 병합하는 방법

    문제 소개JavaScript 개발 중에는 다음과 같은 배열과 객체를 하나로 결합해야 하는 경우가 종종 있습니다.const arr = [1, 2, 3, 4, 5]; const obj = {     group1: [Ram, Mohan, Shyam],     group2: [Jai, Dinesh], };여기서 원하는 작업은 배열과 객체를 zip(병합)하여, 배열의 값들이 객체 내 각 그룹 이름을 키로 하는 새로운 객체에 순서대로 할당되도록 만드는 것입니다.즉, 최종적

  11. JavaScript filter() 메서드로 배열에서 특정 요소 제거하는 방법

    JavaScript 개발을 하다 보면 한 배열에서 다른 배열에 포함된 요소들을 제거해야 하는 경우가 자주 발생합니다. 이번 글에서는 filter() 메서드를 활용해 두 배열의 차집합을 구하는 방법을 예제와 함께 살펴보겠습니다. 문제 상황 다음과 같이 두 개의 배열이 있다고 가정해 보겠습니다. const arr1 = [4, 23, 7, 6, 3, 6, 4, 3, 56, 4]; const arr2 = [4, 56, 23]; 목표는 첫 번째 배열(arr1)에서 두 번째 배열(arr2)에 포함된 요소를 모두 제거하고, 나머지 요소들만

  12. 자바스크립트에서 문자열을 중첩된 계층 객체로 변환하는 방법

    문제 상황두 글자씩 짝지어진 특수한 형태의 문자열이 있다고 가정해 보겠습니다.const str = AABBCCDDEE;이 문자열을 기반으로 아래와 같은 중첩(nested) 구조의 객체를 만들어야 합니다.const obj = { code: AA, sub: { code: BB, sub: { code: CC, sub: { code: DD, sub: { code:

  13. JavaScript로 두 배열의 같은 인덱스 값 일치 개수 구하기

    문제 이해하기두 배열을 비교하여 같은 위치(인덱스)에 있는 값이 몇 개 일치하는지 세는 함수를 작성해야 합니다. 중요한 점은 이 비교가 순서에 의존한다는 것입니다. 즉, 첫 번째 배열의 첫 번째 요소는 두 번째 배열의 첫 번째 요소와 비교하고, 두 번째 요소는 두 번째 요소와 비교하는 식으로 진행됩니다.예를 들어 다음과 같은 두 배열이 입력으로 주어졌다고 가정해 보겠습니다.const arr1 = [4, 7, 4, 3, 3, 3, 7, 6, 5];const arr2 = [6, 5, 4, 5, 3, 2, 5, 7, 5];두 배열을 인덱

  14. JavaScript에서 두 개의 비동기 함수가 모두 완료된 후 함수를 실행하는 방법

    두 개의 비동기 함수를 요소로 가지는 배열이 있다고 가정해 보겠습니다. 이때 두 비동기 함수의 실행이 모두 끝난 시점에 특정 작업(예: 콘솔에 메시지 출력)을 수행해야 한다면 어떻게 접근해야 할까요?비동기 작업 완료 후 코드 실행 방법비동기 작업이 완료된 이후에 어떤 작업을 수행하는 방법은 크게 두 가지가 있습니다.Promise 활용async/await 함수 활용하지만 다루어야 할 비동기 함수가 하나가 아니라 여러 개라면, async/await 방식보다 Promise.all()을 사용하는 것이 훨씬 유리합니다. Promise.all

  15. JavaScript – 문자열에서 n번째 부분 문자열을 제거하는 함수 만들기

    문제 정의세 개의 인자를 받는 String.prototype 함수를 작성해야 한다고 가정해 보겠습니다.첫 번째 인자: 부분 문자열을 검색할 대상 문자열두 번째 인자: 문자열에서 제거하고 싶은 부분 문자열(subStr)세 번째 인자: 숫자 n — 몇 번째 출현(occurrence)을 제거할지 지정제거에 성공하면 새로운 문자열을 반환하고, 어떤 이유로든 제거에 실패하면 -1을 반환해야 합니다.예제 코드const str = jkdsttjkdsre;const subStr = jk;const num = 2;removeStr = functio

  16. JavaScript로 문자열 내 특수 문자를 ASCII 코드 값으로 변환하기

    문자열을 처리하다 보면 영문자나 숫자가 아닌 특수 문자(!, @, # 등)를 다른 형태로 바꿔야 하는 경우가 종종 있습니다. 이번 글에서는 문자열에 포함된 모든 특수 문자를 해당 문자의 ASCII 코드 값으로 치환하는 JavaScript 함수를 작성해 보겠습니다.즉, 함수는 특수 문자가 포함될 수 있는 문자열을 입력받고, 알파벳·숫자·공백은 그대로 유지한 채 특수 문자만 ASCII 값으로 변환된 새로운 문자열을 반환해야 합니다.구현 예제다음은 위 요구 사항을 구현한 코드입니다. { let res = ; for(let i

  17. JavaScript로 숫자의 모든 자릿수 재귀 곱 구현하기

    이번 글에서는 JavaScript를 사용하여 주어진 숫자의 모든 자릿수를 재귀적으로 곱하는 함수를 작성해 보겠습니다. 단, 숫자에 0이 포함되어 있다면 해당 자릿수는 곱셈 결과에 영향을 주지 않도록 1로 취급해야 합니다.문제 이해하기예를 들어, 입력값이 5720이라고 가정해 봅시다. 각 자릿수는 5, 7, 2, 0이며, 여기서 0은 1로 대체되어 계산됩니다.따라서 결과는 다음과 같습니다.5 × 7 × 2 × 1 = 70재귀 접근 방식재귀 함수를 활용하면 다음과 같은 흐름으로 문제를 해결할 수 있습니다.현재 숫자의 마지막 자릿수를 n

  18. 자바스크립트(JavaScript) 배열에서 중복으로 등장한 요소 모두 제거하기

    배열을 인수로 받아 중복된 값을 모두 제거한 새로운 배열을 반환하는 함수를 작성해 보겠습니다. 단순히 중복을 하나만 남기는 방식이 아니라, 원본 배열에서 두 번 이상 등장한 값은 새 배열에 아예 포함되지 않도록 처리해야 합니다.예를 들어 입력이 다음과 같다면,const arr = [763,55,43,22,32,43,763,43];출력 결과는 아래와 같아야 합니다.const output = [55, 22, 32];이 문제는 자바스크립트의 다음 두 가지 배열 메서드를 활용해 해결할 수 있습니다.Array.prototype.indexOf

  19. JavaScript에서 문자열 배열을 객체로 변환하는 방법 - 속성 분할 활용하기

    문제 상황JavaScript 개발을 하다 보면 각 요소가 대시(-)를 포함하고 있는 문자열 배열을 다뤄야 할 때가 있습니다. 이때 대시 왼쪽에는 속성 키(property key)가, 오른쪽에는 해당 키의 값(value)이 위치합니다.예를 들어 다음과 같은 입력 배열이 있다고 가정해 보겠습니다.const arr = [playerName-Kai Havertz, age-21, nationality-German, position-CAM, languages-German,English,Spanish, club-Chelsea];이 배열의 각 문

  20. JavaScript 라이브러리 없이 중첩 배열 평탄화하기: falsy 값을 포함한 배열 병합 방법

    이번 글에서는 falsy(거짓 같은) 값을 포함하는 중첩 배열을 입력으로 받아, 중첩 구조를 모두 제거하고 일차원 배열로 만들어주는 JavaScript 함수를 직접 작성해 보겠습니다.핵심 조건은 라이브러리나 내장 유틸리티 함수에 의존하지 않고 순수 JavaScript만으로 구현한다는 점입니다.문제 정의예를 들어 다음과 같은 중첩 배열이 있다고 가정해 봅시다.const arr = [[1, 2, 3], [4, 5, [5, false, 6, [5, 8, null]]], [6]];이 배열에는 false와 null 같은 falsy 값이 포함

Total 5929 -컴퓨터  FirstPage PreviousPage NextPage LastPage CurrentPage:89/297  20-컴퓨터/Page Goto:1 83 84 85 86 87 88 89 90 91 92 93 94 95