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

JavaScript

  1. JavaScript로 문자열에서 두 번째로 많이 등장하는 문자 찾기

    문자열을 입력받아 해당 문자열에서 두 번째로 많이 등장하는 문자를 반환하는 JavaScript 함수를 작성해야 합니다.예를 들어, 다음과 같은 문자열이 주어졌다고 가정해 보겠습니다.const str = Hello world, I have never seen such a beautiful weather in the world;이 문자열에서 가장 많이 등장하는 문자는 공백( )이고, 그다음으로 많이 등장하는 문자는 e입니다. 따라서 함수의 결과값은 e가 되어야 합니다.구현 방법이 문제는 다음 단계로 해결할 수 있습니다.객체(맵)를 사용

  2. JavaScript에서 두 문자열을 2글자씩 번갈아 합치는 방법

    두 개의 문자열을 입력받아, 첫 번째 문자열에서 두 글자씩, 두 번째 문자열에서 두 글자씩 번갈아 가며 추출한 뒤 하나의 새로운 문자열로 합쳐서 반환하는 JavaScript 함수를 작성해 보겠습니다. 예를 들어 다음과 같은 두 문자열이 있다고 가정해 봅시다. const str1 = Hello world; const str2 = How are you btw; 이때 기대되는 출력 결과는 다음과 같습니다. const output = HeHollw o arwoe rlyodu btw; 결과를 자세히 보면 첫 번째 문자열의 앞 두 글자 He

  3. JavaScript로 팬디지털(Pandigital) 숫자 판별하는 방법

    팬디지털(Pandigital) 숫자란 0부터 9까지의 모든 자릿수를 최소 한 번 이상 포함하는 수를 말합니다. 예를 들어 53657687691428890은 0~9의 모든 숫자가 등장하므로 팬디지털 숫자입니다.이번 글에서는 숫자를 나타내는 문자열을 입력받아, 해당 숫자가 팬디지털인지 여부를 판별하는 JavaScript 함수를 작성해 보겠습니다. 함수는 팬디지털 숫자일 경우 true, 그렇지 않으면 false를 반환합니다.구현 아이디어핵심 로직은 간단합니다. 먼저 0부터 9까지의 숫자 목록(legend)을 준비한 뒤, 입력 문자열을 한

  4. JavaScript로 배열의 연속된 두 요소 합을 계산해 새 배열 만들기

    문제 이해하기숫자로 이루어진 배열을 입력받아, 원본 배열에서 인접한 두 요소씩 짝지어 그 합을 담은 새 배열을 반환하는 JavaScript 함수를 작성해야 합니다.예를 들어, 입력 배열이 다음과 같다면 −const arr = [3, 6, 3, 87, 3, 23, 2, 2, 6, 8];출력 결과는 다음과 같아야 합니다 −const output = [9, 90, 26, 4, 14];결과 배열의 각 값은 원본 배열에서 두 개씩 묶은 요소들의 합입니다. 즉, 3+6=9, 3+87=90, 3+23=26, 2+2=4, 6

  5. JavaScript로 배열에서 연속된 음수가 아닌 숫자 그룹 개수 세는 방법

    JavaScript 프로그래밍을 하다 보면 배열 안에서 특정 조건을 만족하는 숫자들이 연속으로 나타나는 구간, 즉 그룹의 개수를 세어야 하는 경우가 있습니다. 이번 글에서는 음수가 아닌 숫자(0과 양수)가 연속으로 등장하는 그룹의 개수를 세는 방법을 알아보겠습니다.문제 상황다음과 같은 숫자 배열이 있다고 가정해 보겠습니다.const arr = [-1,-2,-1,0,-1,-2,-1,-2,-1,0,1,0];여기서 우리가 작성해야 할 함수는 배열 내에서 음수가 아닌 숫자(양수와 0)가 연속으로 나타나는 그룹의 개수를 반환해야 합니다.위

  6. JavaScript로 문자열 내 각 문자의 N번째 등장만 지정한 문자로 바꾸는 방법

    JavaScript에서 첫 번째 인수로 문자열을, 두 번째 인수로 숫자 n, 세 번째 인수로 문자 c를 받는 함수를 작성해 보겠습니다. 이 함수는 문자열에 등장하는 모든 문자의 n번째 출현을 세 번째 인수로 전달된 문자로 교체한 새로운 문자열을 반환해야 합니다. 예를 들어 문자열이 This is a sample string이고 n이 2, 교체할 문자가 *라면, 각 문자가 두 번째로 나타나는 자리만 별표(*)로 바뀐 새 문자열이 반환되어야 합니다. 구현 코드 이 함수는 다음과 같이 작성할 수 있습니다. const str = This

  7. 자바스크립트(JavaScript)로 문자열에서 두 번째로 짧은 단어의 길이 구하는 방법

    이번 포스트에서는 문장을 담고 있는 문자열을 첫 번째이자 유일한 인수로 전달받아, 해당 문자열 안에서 두 번째로 짧은 단어의 길이를 반환하는 자바스크립트 함수를 만들어 보겠습니다.문제 이해하기예를 들어, 입력으로 주어진 문자열이 다음과 같다고 가정해 봅시다.const str = This is a sample string;각 단어의 길이는 This(4), is(2), a(1), sample(6), string(6)입니다. 이 중 가장 짧은 단어는 a(길이 1)이고, 그다음으로 짧은 단어는 is이므로 함수가 반환해야 할 값은 2입니다.

  8. JavaScript로 두 배열을 합쳐 연속된 수열을 만들 수 있는지 확인하는 방법

    이번 글에서는 숫자로 이루어진 두 개의 배열을 입력받아, 두 배열의 모든 요소를 합치고 임의로 섞었을 때 연속적인(consecutive) 수열을 만들 수 있는지 판별하는 JavaScript 함수를 작성해 보겠습니다. 조건을 만족하면 true, 그렇지 않으면 false를 반환해야 합니다.예를 들어 다음과 같은 두 배열이 있다고 가정해 보겠습니다.const arr1 = [4, 6, 2, 9, 3]; const arr2 = [1, 5, 8, 7];두 배열을 합치면 [4, 6, 2, 9, 3, 1, 5, 8, 7]이 되고, 이를 오름차순으

  9. JavaScript 배열에서 데이터 타입별 빈도수를 Map으로 계산하는 방법

    다양한 데이터 타입의 요소가 섞여 있는 배열이 주어졌을 때, 각 데이터 타입이 몇 번 등장하는지 빈도수를 Map 객체로 반환하는 JavaScript 함수를 작성해 보겠습니다.예를 들어 다음과 같은 배열이 있다고 가정해 봅시다.const arr = [23, df, undefined, null, 12, { name: Rajesh }, [2, 4, 7], dfd, null, Symbol(*), 8];이 배열에는 숫자, 문자열, undefined, null, 객체, 배열, 심볼 등 여러 타입이 혼재되어 있습니다. 우리의 목표는 이

  10. JavaScript로 배열의 양 끝 요소를 쌍으로 묶는 방법

    이번 글에서는 숫자 또는 문자열로 이루어진 배열을 입력받아, 배열의 앞쪽 n번째 요소와 뒤쪽 n번째 요소를 하나의 쌍으로 묶은 새로운 2차원 배열을 반환하는 JavaScript 함수를 작성해 보겠습니다. 예를 들어, 다음과 같은 배열이 있다고 가정해 보겠습니다. const arr = [1, 2, 3, 4, 5, 6]; 그렇다면 기대하는 출력 결과는 다음과 같습니다. const output = [[1, 6], [2, 5], [3, 4]]; 첫 번째 요소와 마지막 요소, 두 번째 요소와 뒤에서 두 번째 요소가 서로 짝을 이루는 방

  11. JavaScript로 지정된 길이의 랜덤 문자열 생성하는 방법

    JavaScript에서 숫자 n을 입력받으면, 영어 소문자 알파벳 26개(a~z)만으로 구성된 길이 n의 랜덤 문자열을 반환하는 함수를 작성해 보겠습니다.구현 원리핵심 아이디어는 다음과 같습니다.Math.random()으로 0 이상 1 미만의 난수를 생성합니다.여기에 26을 곱하고 Math.floor()로 정수화하여 0~25 사이의 정수를 얻습니다.소문자 a의 아스키 코드가 97이므로, String.fromCharCode(97 + random)을 사용해 해당하는 알파벳 문자로 변환합니다.예제 코드const num = 8; const

  12. JavaScript에서 지정된 숫자 이후의 첫 번째 소수 찾는 방법

    문제 정의 하나의 숫자를 매개변수로 받아, 그 숫자보다 큰 첫 번째 소수(Prime Number)를 반환하는 JavaScript 함수를 작성해야 합니다. 예를 들어, 입력값이 24라면 24보다 큰 첫 번째 소수인 29를 출력해야 합니다. 해결 접근 방식 이 문제는 다음과 같은 두 단계로 나누어 해결할 수 있습니다. 1단계 — 소수 판별 함수: 임의의 수 n이 소수인지 검사하는 isPrime 함수를 작성합니다. 1은 소수가 아니고, 2는 소수입니다. 그 외의 수는 2부터 n-1까지 차례대로 나누어 보았을 때 나머지가 0이 되는 값이

  13. 자바스크립트로 문자열을 이진(Binary) 문자열로 변환하는 방법

    이번 튜토리얼에서는 소문자 문자열을 입력받아 각 알파벳을 이진 숫자로 치환한 새로운 문자열을 반환하는 자바스크립트 함수를 작성해 보겠습니다.변환 규칙은 다음과 같습니다.a ~ m 범위의 알파벳 → 0n ~ z 범위의 알파벳 → 1공백 및 특수 문자는 원본 그대로 유지접근 방법먼저 입력 문자열을 모두 소문자로 변환한 뒤, 각 문자를 하나씩 순회하며 해당 문자가 m보다 큰지 비교합니다. m보다 크면 1을, 그렇지 않으면 0을 결과 문자열에 추가합니다. 한 가지 주의할 점은 공백이나 숫자처럼 대소문자 구분이 없는 문자인데, 이런 경우 t

  14. JavaScript로 배열 속 유일하게 다른 요소 찾기

    모든 요소가 동일한 값을 가지고 있지만 단 하나의 요소만 값이 다른 배열이 주어졌을 때, 그 유일하게 다른 값을 찾아 반환하는 JavaScript 함수를 작성해 보겠습니다.예를 들어 [2, 4, 4, 4, 4]와 같은 배열이 입력으로 주어진다면, 함수는 다른 값인 2를 반환해야 합니다.예제 코드이 문제를 해결하는 코드는 다음과 같습니다.const arr = [2, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4]; // 배열의 길이는 최소 3이라고 가정합니다. const findUnlike = arr => {  

  15. JavaScript에서 빼기 연산자(-) 없이 두 수의 뺄셈 구현하기

    두 개의 숫자를 인수로 받아 그 차이를 반환하는 JavaScript 함수를 작성해야 합니다. 단, 빼기 연산자(-)는 사용할 수 없습니다.접근 방식: 비트 연산 활용빼기 연산자 없이 뺄셈을 수행하려면 비트 연산을 활용할 수 있습니다. 핵심 아이디어는 다음과 같습니다.XOR(^) 연산은 올림(carry)을 고려하지 않은 자리별 덧셈(또는 뺄셈의 기초)을 수행합니다.AND(&) 연산 후 왼쪽 시프트(<< 1)를 하면 다음 자리로 넘어가는 올림 값을 얻을 수 있습니다.이 과정을 재귀적으로 반복하면, 올림 값이 0이 되는

  16. JavaScript 배열에서 중복 문자가 없는 첫 번째 문자열 찾는 방법

    문자열 배열을 다룰 때, 각 문자열에 중복된 문자가 포함되어 있는 경우가 있습니다. 예를 들어 다음과 같은 배열이 있다고 가정해 보겠습니다.const arr = [54gdgdfe3, 434ffd, 43frdf, 43fdhnh, wgcxhjny, fsdf34];이번 글에서는 이러한 배열을 입력으로 받아, 중복 문자가 하나도 없는(모든 문자가 고유한) 첫 번째 요소를 반환하는 JavaScript 함수를 작성해 보겠습니다. 만약 조건을 만족하는 문자열이 존재하지 않는다면 false를 반환해야 합니다.해결 접근 방식핵심 아이디어는 다음과

  17. JavaScript로 두 숫자의 자릿수 거리(절대 차이의 합) 계산하기

    두 개의 숫자 a와 b를 입력받아 두 숫자 사이의 자릿수 거리(digit distance)를 반환하는 JavaScript 함수를 작성해 보겠습니다.자릿수 거리란?자릿수 거리란 두 숫자에서 서로 대응하는 자릿수끼리의 차이에 절댓값을 취한 뒤, 그 값들을 모두 더한 합계를 의미합니다.예시예를 들어 두 숫자가 345와 678이라고 가정해 보겠습니다.이 경우 자릿수 거리는 다음과 같이 계산됩니다.|3-6| + |4-7| + |5-8|= 3 + 3 + 3= 9따라서 두 숫자의 자릿수 거리는 9가 됩니다.구현 코드이 기능을 수행하는 함수는 다

  18. JavaScript로 분수 배열의 합을 기약분수 형태로 구하는 함수

    문제 상황다음과 같이 배열 안에 여러 개의 하위 배열이 들어 있는 2차원 배열이 있다고 가정해 보겠습니다.const arr = [[12, 56], [3, 45], [23, 2], [2, 6], [2, 8]];바깥 배열의 요소 개수에는 제한이 없지만, 각 하위 배열은 반드시 숫자 두 개만 포함해야 한다는 점에 유의해야 합니다.각 하위 배열의 두 숫자는 하나의 분수를 나타냅니다. 예를 들어 첫 번째 하위 배열은 12/56, 두 번째 하위 배열은 3/45와 같은 식입니다.우리가 작성해야 할 JavaScript 함수는 이런 배열을 입력받아

  19. JavaScript로 배열의 모든 요소를 나누어 떨어지게 하는 가장 작은 n자리 수 찾기

    문제 개요첫 번째 인수로 숫자 n을, 두 번째 인수로 숫자 배열을 받는 JavaScript 함수를 작성해야 합니다. 이 함수는 배열에 포함된 모든 요소의 배수가 되는, 즉 모든 요소로 나누어 떨어지는 가장 작은 n자리 수를 반환해야 합니다.만약 n자리 범위 안에서 조건을 만족하는 수가 존재하지 않는다면, 자릿수와 관계없이 조건을 만족하는 가장 작은 수를 반환하면 됩니다.예시배열이 다음과 같다고 가정해 보겠습니다.const arr = [12, 4, 5, 10, 9]n = 2와 n = 3 두 경우 모두 출력 결과는 다음과 같습니다.출력

  20. JavaScript에서 배열의 기울기 판별하기 – 단조 증가·감소 여부 확인 함수

    숫자 배열을 인자로 받아, 해당 배열이 단조 증가(엄격히 증가)하거나 단조 감소(엄격히 감소)하는 경우에는 true를 반환하고, 그렇지 않으면 false를 반환하는 JavaScript 함수를 작성해 보겠습니다.수학적 배경수학에서 엄격히 증가하는 함수(strictly increasing function)란 그래프로 나타냈을 때 값이 항상 계속 증가만 하는 함수를 의미합니다. 마찬가지로 엄격히 감소하는 함수(strictly decreasing function)는 그래프의 값이 항상 계속 감소만 하는 함수입니다.즉, 배열의 인접한 세 요

Total 5929 -컴퓨터  FirstPage PreviousPage NextPage LastPage CurrentPage:73/297  20-컴퓨터/Page Goto:1 67 68 69 70 71 72 73 74 75 76 77 78 79