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

JavaScript

  1. 자바스크립트로 배열 안의 짝수를 제자리에 반복(복제)하는 방법

    이번 글에서는 배열 안에 있는 짝수를 동일한 배열 내에서 한 번 더 반복(복제)하는 자바스크립트 함수를 작성해 보겠습니다.예를 들어 다음과 같은 배열이 주어졌을 때 −const arr = [1, 2, 5, 6, 8];원하는 출력 결과는 다음과 같습니다 −const output = [1, 2, 2, 5, 6, 6, 8, 8];접근 방법가장 간단하고 안전한 방법은 배열을 뒤에서부터 순회하면서 짝수를 만날 때마다 해당 위치에 같은 값을 삽입(splice)하는 것입니다. 뒤에서부터 순회하면 요소가 삽입되어도 아직 확인

  2. JavaScript에서 숫자에 가장 가까운 배열 요소의 인덱스 찾기

    JavaScript로 개발을 하다 보면 배열 안에서 특정 숫자와 가장 가까운 값을 찾아야 하는 경우가 자주 발생합니다. 예를 들어 슬라이더 값 보정, 좌표 매칭, 데이터 정규화 등 다양한 상황에서 유용하게 활용할 수 있습니다.이번 글에서는 배열과 하나의 숫자를 입력받아, 그 숫자와 가장 가까운 요소의 인덱스를 반환하는 함수를 작성하는 방법을 알아보겠습니다.문제 정의다음과 같은 배열이 있다고 가정해 보겠습니다.const arr = [2, 42, 82, 122, 162, 202, 242, 282, 322, 362];이 배열과 숫자 n(

  3. JavaScript로 배열의 고유 항목 개수를 세는 함수 만들기

    배열에 포함된 모든 고유(unique) 항목의 개수를 세는 JavaScript 함수를 작성해 보겠습니다. 이 함수는 배열을 순회하면서 각 요소가 몇 번 등장하는지 계산한 뒤, 그 결과를 객체 형태로 반환합니다.문제 정의예를 들어 다음과 같은 배열이 있다고 가정해 보겠습니다.const arr = [hi, hello, hi];이 배열에는 hi가 2번, hello가 1번 등장하므로, 함수는 { hi: 2, hello: 1 }과 같은 객체를 반환해야 합니다.구현 방법빈 객체를 하나 준비한 뒤, 반복문으로 배열을 순회하면서 각 요소를 키(k

  4. JavaScript로 배열에서 특정 숫자보다 크거나 작은 요소 개수 구하기

    다음과 같은 숫자 배열이 있다고 가정해 보겠습니다. const arr = [3, 5, 5, 2, 23, 4, 7, 8, 8, 9]; 우리는 이 배열과 하나의 숫자 n을 인자로 받아, n보다 큰 요소의 개수와 n보다 작은 요소의 개수를 각각 담고 있는 객체를 반환하는 JavaScript 함수를 작성해야 합니다. 예제 다음은 해당 코드입니다. const arr = [3, 5, 5, 2, 23, 4, 7, 8, 8, 9]; const smallerLargerNumbers = (arr, num) => { return arr.

  5. 라이브러리 함수 없이 숫자의 제곱근 구하기 - JavaScript

    JavaScript에서 숫자를 입력받아 그 제곱근을 계산하는 함수를 작성해야 합니다. 단, Math.sqrt()와 같은 내장 라이브러리 함수는 사용할 수 없습니다.이 문제는 이진 탐색(Binary Search) 알고리즘을 활용하면 효율적으로 해결할 수 있습니다. 먼저 완전 제곱수인지 확인한 후, 제곱근이 존재하는 구간을 좁혀 가며 근사값을 찾는 방식입니다.예제 코드다음은 전체 구현 코드입니다 −const square = (n, i, j) => {    let mid = (i + j) / 2; &nb

  6. JavaScript로 숫자 문자열의 선행 0을 공백으로 바꾸는 방법

    문제 개요 숫자를 나타내는 문자열을 입력받아, 맨 앞에 위치한 0(선행 0)을 공백으로 바꾸는 JavaScript 함수를 작성해야 합니다. 이때 숫자 앞에 이미 존재하는 공백은 그대로 유지해야 한다는 점이 중요합니다. 예를 들어, 문자열 값이 다음과 같이 정의되어 있다면 − "    004590808" 출력 결과는 다음과 같아야 합니다 − " 4590808" 예제 코드 다음은 위 문제를 해결하는 전체 코드입니다 − co

  7. JavaScript로 0~9 범위에서 중복 없는 난수 5개 생성하기 (첫 번째 숫자는 0 불가)

    이번 문제에서는 정확히 다섯 개의 중복 없는 난수를 담은 배열을 생성하는 JavaScript 함수를 작성해야 합니다. 조건은 다음과 같습니다.모든 숫자는 0부터 9까지의 범위([0, 9]) 안에 있어야 합니다.배열의 첫 번째 숫자는 0이 될 수 없습니다.구현 코드다음은 위 조건을 만족하는 함수의 예시 코드입니다.const fiveRandoms = () => {   const arr = []   while (arr.length < 5) {      const r

  8. JavaScript에서 여러 배열을 조합해 객체 배열을 만드는 방법

    문제 상황다음과 같이 두 개의 배열이 있다고 가정해 보겠습니다.const options = [A, B, C, D];const values = [true, false, false, false];이 두 배열을 조합하여 아래와 같은 형태의 새로운 객체 배열을 생성하고 반환하는 JavaScript 함수를 작성해야 합니다.const response = [    {opt: A, val: true},    {opt: B, val: false},   

  9. JavaScript로 배열에서 가장 큰 값을 가진 객체를 찾아 이름과 함께 반환하는 방법

    다음과 같이 학생들의 시험 점수 정보를 담고 있는 객체 배열이 있다고 가정해 보겠습니다.const students = [     { name: Andy, total: 40 },     { name: Seric, total: 50 },     { name: Stephen, total: 85 },     { name: David, total: 30 },     

  10. 재귀를 활용해 배열의 모든 위치에 요소 삽입하는 방법 – JavaScript

    이번 문제에서는 insertAllPositions라는 함수를 선언해야 합니다. 이 함수는 두 개의 인자를 받습니다.삽입할 요소 x대상 배열 arr함수는 배열의 배열(array of arrays)을 반환해야 하며, 각 내부 배열은 원본 배열 arr의 가능한 모든 위치에 요소 x를 하나씩 삽입한 결과여야 합니다.즉, arr의 길이가 N이라면 결과 배열에는 N + 1개의 배열이 포함됩니다.예시예를 들어 insertAllPositions(10, [1,2,3])의 결과는 다음과 같아야 합니다.const output = [  &nbs

  11. JavaScript에서 한 배열을 기준으로 다른 배열 필터링하는 방법

    문제 상황 다음과 같이 사람 정보를 담은 객체 배열과, 필터링 기준이 될 이름 문자열 배열이 있다고 가정해 보겠습니다. const main = [     {name: "Karan", age: 34},     {name: "Aayush", age: 24},     {name: "Ameesh", age: 23},     {name: &quo

  12. 좀비 아포칼립스 사례 연구: 자바스크립트로 오염 지역 찾기

    끔찍한 좀비 바이러스가 디지털 도시 곳곳으로 번지고 있습니다. 우리는 디지털 CDC(질병통제예방센터)에서 근무하는 연구원으로, 도시 지도를 분석해 어떤 지역이 좀비 바이러스에 오염되었는지 판별하는 임무를 맡고 있습니다. 이 정보는 디지털 군대가 폭격 목표 지점을 결정하는 데 사용됩니다. 문제 개요 이번 사례의 좀비들은 새로운 변종이라서 수직·수평 방향(상하좌우)으로만 이동할 수 있으며, 자신과 같은 숫자만 감염시킬 수 있습니다. 입력으로는 숫자로 채워진 2차원 배열(행렬)이 주어집니다. 미스터리하게도 환자 제로(최초 감염자)는 항

  13. JavaScript로 이메일·비밀번호 일치 여부 확인하기

    문제 상황소셜 네트워킹 플랫폼의 수많은 사용자 중 두 명의 로그인 정보를 담고 있는 다음과 같은 더미(dummy) 배열이 있다고 가정해 보겠습니다.const array = [{    email: usman@gmail.com,    password: 123},{    email: ali@gmail.com,    password: 123}];여기서 요구되는 것은 이메일 문자열과 비밀번호 문자열을

  14. 자바스크립트 객체에서 속성 제거하는 방법 – delete 연산자 사용법

    자바스크립트를 다루다 보면 객체에서 특정 속성(property)을 제거해야 하는 경우가 자주 발생합니다. 이 글에서는 delete 연산자를 사용해 객체의 속성을 안전하게 삭제하는 방법과 함께, 주의해야 할 사항까지 자세히 알아보겠습니다.문제 상황예를 들어 다음과 같은 객체가 있다고 가정해 봅시다.const myObject = { ircEvent: PRIVMSG, method: newURI, regex: ^https://.* };여기서 regex 속성을 제거하여 아래와 같은 새로운 객체를 만들고 싶습니다.cons

  15. JavaScript에서 배열의 특정 구간만 뒤집는 방법

    JavaScript로 프로그래밍하다 보면 배열 전체가 아니라 특정 구간만 뒤집어야 하는 경우가 종종 있습니다. 예를 들어 알고리즘 문제 풀이나 데이터 가공 과정에서 배열의 일부 요소들만 순서를 반대로 바꿔야 할 때가 그렇습니다.이번 글에서는 배열, 시작 인덱스(start index), 끝 인덱스(end index)를 매개변수로 받아 해당 범위의 요소들만 뒤집는 함수를 직접 구현해 보겠습니다.문제 정의와 예시예를 들어 다음과 같은 배열이 있다고 가정해 보겠습니다.const arr = [2, 6, 5, 8, 3, 5, 2, 6, 7];

  16. JavaScript에서 객체 배열을 age 속성 기준 오름차순으로 정렬하는 방법

    문제 소개JavaScript로 개발을 하다 보면 객체(object)로 이루어진 배열을 특정 속성값을 기준으로 정렬해야 하는 경우가 자주 발생합니다. 이번 글에서는 각 객체의 age 속성을 기준으로 배열을 오름차순(작은 값부터 큰 값 순서)으로 정렬하는 방법을 알아보겠습니다.먼저 다음과 같은 객체 배열이 있다고 가정해 보겠습니다.const people = [ {id:1, name:Andrew, age:30, gender:m, category:G}, {id:2, name:Brandon, age:25, gender:m, c

  17. JavaScript로 여러 배열의 교집합(공통 요소) 찾기

    개요 이번 글에서는 임의의 개수만큼 배열을 인수로 받아, 모든 배열에 공통으로 존재하는 요소만 모아 새로운 배열로 반환하는 JavaScript 함수를 작성해 보겠습니다. 공통 요소가 하나도 없는 경우에는 빈 배열([])을 반환하도록 처리합니다. 예제 데이터 설명을 위해 다음과 같은 세 개의 배열이 있다고 가정해 보겠습니다. const arr1 = [2, 6, 7, 1, 7, 8, 4, 3]; const arr2 = [5, 7, 2, 2, 1, 3]; const arr3 = [1, 56, 345, 6, 54, 2, 68, 85, 3]

  18. 한 자리 숫자가 될 때까지 각 자릿수를 반복해서 더하는 방법 - JavaScript

    이번 글에서는 숫자의 각 자릿수를 재귀적으로 더해, 결과가 한 자리 숫자가 될 때까지 반복하는 JavaScript 함수를 작성해 보겠습니다. 조건은 숫자를 문자열(String)이나 다른 데이터 타입으로 변환하지 않고 처리해야 한다는 것입니다.접근 방식핵심 아이디어는 다음과 같습니다.1. 나머지 연산자(%)를 사용해 마지막 자릿수를 추출합니다. 예를 들어 num % 10은 일의 자리 숫자를 반환합니다.2. Math.floor(num / 10)을 사용해 마지막 자릿수를 제거한 나머지 부분을 구합니다.3. 이 과정을 재귀 호출로 반복하여

  19. JavaScript로 세 자리 숫자를 배열 맨 앞으로 이동하는 방법

    문제 개요숫자로 이루어진 배열을 입력받아, 배열 안에 있는 모든 세 자리 정수(100~999)를 배열의 맨 앞으로 이동시키는 JavaScript 함수를 작성해야 합니다.예를 들어 다음과 같은 숫자 배열이 있다고 가정해 보겠습니다.const numList = [1, 324, 34, 3434, 304, 2929, 23, 444];함수 실행 후에는 세 자리 숫자(324, 304, 444)가 모두 배열 앞쪽으로 옮겨져야 합니다.해결 아이디어이 문제는 배열 메서드 두 개만으로 손쉽게 해결할 수 있습니다.splice(i, 1): 인덱스 i에

  20. JavaScript로 숫자의 각 자릿수를 제곱해 이어 붙이는 방법

    문제 개요이번 글에서는 하나의 숫자를 입력받아, 그 숫자의 모든 자릿수를 각각 제곱한 뒤 결과를 이어 붙여 새로운 값을 반환하는 JavaScript 함수를 작성하는 방법을 알아보겠습니다.예를 들어 입력값이 다음과 같다면 −9119출력 결과는 다음과 같아야 합니다 −811181그 이유는 9²는 81이고, 1²는 1이기 때문입니다. 즉, 각 자릿수를 제곱한 값(81, 1, 1, 81)을 순서대로 이어 붙이면 811181이 됩니다.접근 방법이 문제는 다음 세 단계로 해결할 수 있습니다.숫자를 문자열로 변환해 각 자릿

Total 5929 -컴퓨터  FirstPage PreviousPage NextPage LastPage CurrentPage:85/297  20-컴퓨터/Page Goto:1 79 80 81 82 83 84 85 86 87 88 89 90 91