전체 글
[JAVASCRIPT] 백준 1032번 문제 풀이
❗ 풀이 let [N, ...input] = require('fs').readFileSync('dev/stdin').toString().trim().split("\n").map((line)=> line.replace(/\n|\r|\s*/g, "")); let differentPart = ''; for (let i = 0; i str[i] !== char)) { differentPart += '?'; } else { differentPart += char; } } console.log(differentPart); 1. split("\n") 하였을 때 배열내에 문자열에 개행..
[React.js] Geolocation과 reverseGeocoding을 활용한 사용자 현재 위치 기반 좌표, 주소값 받아오기
해당 글은 코드에 대한 자세한 설명을 담는 포스팅이기보다는 나와 같은 기능을 만드는 주니어 개발자를 위한 포스팅임을 미리 알린다. 나는 현재 리액트 사이드 프로젝트로 사용자 현재 위치를 기반으로 하여 주위 모범 음식점을 알려주는 gis 기반의 사이드 프로젝트를 혼자 진행중이다 (https://github.com/Growing-Jiwoo/ModelRestaurant) 해당 프로젝트에서 기초 지반이 되는 기능이 바로 사용자가 접속한 위치의 위도 경도를 받아오고 해당 위도 경도로 주소값을 받아오는 기능이다. 해당 기능이 필요한 이유는 많고 많은 음식점 리스트 중에 사용자의 현재 위치를 기반으로 주위에 있는 음식점 리스트들만을 보여주게 하기위해서이다. ❗ 전체 코드 import { useState, useEff..
[JAVASCRIPT] 백준 4949번 문제 풀이
❗ 조건 조건1. 모든 왼쪽 소괄호("(")는 오른쪽 소괄호(")")와만 짝을 이뤄야 한다. 조건2. 모든 왼쪽 대괄호("[")는 오른쪽 대괄호("]")와만 짝을 이뤄야 한다. 조건3. 모든 오른쪽 괄호들은 자신과 짝을 이룰 수 있는 왼쪽 괄호가 존재한다. 조건4. 모든 괄호들의 짝은 1:1 매칭만 가능하다. 즉, 괄호 하나가 둘 이상의 괄호와 짝지어지지 않는다. 조건5. 짝을 이루는 두 괄호가 있을 때, 그 사이에 있는 문자열도 균형이 잡혀야 한다. ❗ 풀이 let input = require('fs').readFileSync('dev/stdin').toString().trim().split('\n'); let compareStr; let compareArray = []; let result = [];..
[JAVASCRIPT] 백준 1302번 문제 풀이
❗ 조건 조건1. 가장 많이 팔린 책이 여러 개일 경우에는 사전 순으로 가장 앞서는 제목을 출력 ❗ 풀이 let [n, ...input] = require('fs').readFileSync('dev/stdin').toString().trim().split('\n').sort(); let countObject = {}; input.forEach(element => { countObject[element] == null ? countObject[element] = 1 : countObject[element] += 1 }); let max = Math.max(...Object.values(countObject)); console.log(Object.keys(countObject).find(key => coun..
[JAVASCRIPT] 백준 1439번 문제 풀이
❗ 풀이 let input = require('fs').readFileSync('dev/stdin').toString().trim().split(''); let array0 = []; let array1 = []; let string = ""; function solution(min_num, max_num, array){ for (let i = 0; i < input.length; i++) { if (input[i] === min_num) { string += input[i]; if (input[i + 1] === max_num || input[i + 1] === undefined) { array.push(string); string = ""; } } } } solution("0","1",array0) ..
[JAVASCRIPT] 백준 14425번 문제 풀이
❗ 조건 조건1. 문자열의 길이가 짧은 것부터 조건2. 문자열의 길이가 같으면 사전 순으로 ❗ 풀이 let input = require('fs').readFileSync('dev/stdin').toString().trim().split('\n'); const [N, M] = input[0].split(' ').map(Number); const N_data = input.slice(1, 1 + N); const M_data = input.slice(1 + N); let count = 0; const resultObject = {}; N_data.forEach((ele) => (resultObject[ele] = true)); M_data.forEach((ele) => { if (resultObject[el..
[자바스크립트 / Vanilla JS] forEach()와 map()의 차이점
map()과 forEach()에 대한 정의는 패스.❗ forEach()와 map()의 공통점forEach, map공통점은 "배열을 이용한다"는 점이다.배열의 값을 조작해서 원하는 결과값을 도출하는데 의미가 있다.❗ forEach()와 map()의 차이점1. 새로운 배열을 반환하는 map()forEach()가 배열 요소마다 한 번씩 주어진 함수를 실행하는 것과 달리,map()은 배열 내의 모든 요소 각각에 대하여 주어진 함수(콜백)를 호출한 결과를 모아 새로운 배열을 반환한다는 특징을 가지고 있다. 그리고, forEach()와 map()은1. currentValue (배열 원소의 값)2. index (현재 요소의 인덱스)3. array (현재 배열)세 개의 인자를 가지고 호출된다. 2. 리턴값을 보내지 않..
[React.js] async/await에서 발생하는 promise<pending> 해결하기
하소연 먼저 시작하겠다..... 현재 혼자서 리액트 사이드 프로젝트 진행중에 있다. 해당 프로젝트에서 geolocation api를 통해 사용자의 위도 경도를 받아낸 후 받아온 위도 경도를 reversegeocoding하여 사용자의 주소까지 가져오는 커스텀 훅을 만들던 중이였다. 내가 원하는 로직은 이렇다. 1. 사용자의 위도 경도를 받아온다. 2. 받아온 위도 경도 값을 reversegeocoding하는 함수에 삽입하여 주소값을 얻어낸다. 해당 로직대로 구현하였을 때 위도 경도는 잘 받아오지만 위도 경도를 props로 받아서 reversegeocoding할 때 return을 할 경우 원하는 값이 반환되는게 아닌 promise 값을 던져주더라 .... * promise은 pending 뜻 그대로 이행하거..