반응형

Javascript 110

[React] dangerouslySetInnerHTML 화면 넘어감

📱테스트 환경 "react": "18.2.0" "react-dom": "18.2.0" "typescript": "^4.9.5" ReactQuill 라이브러리를 사용하였고, 여기서 작성한 값을 저장하려고 하니까 태그가 함께 값이 넘어왔고 스타일을 이대로 넣기 위해 dangeroulsySetInnerHTML 을 사용하였다. styled-components 를 사용하여 디자인을 하고있었고 해당 Content 디자인은 아무것도 적용하지 않은 상태였다. 어차피 태그에 적용된 스타일대로 들어갈 것이라고 예상했고, 그냥 그대로 보여주면될 것이라고 생각했기 때문이다. export const Content = styled.div``; 그래도 이렇게 만들어놓은 이유는 나중에 혹시나 디자인이 필요한 경우 작업하기 위해서 만..

Javascript/React 2024.04.03

[TypeScript] try catch 의 e 타입 - unknown

📱테스트 환경 "nuxt": "^3.9.3" "nuxt-jwt-auth": "^0.0.28" 개인적인 궁금함으로 시작된 내용이였는데 코드 작성할때 try { ... } catch(e) { ... } 로 묶어주는 경우가 많았다. 유지보수 측면이나 안전성을 높일 수 있는 기본적인 방법이라고 생각했고 디버깅 할때도 편했기 때문이다. 타입스크립트로 작성하면 e 에 타입을 정해지지않았다는 에러를 만날 수 있는데 나는 원래 Any 타입을 사용했다. 실제로도 그렇게 사용하는데 문제도 발생하지않았고 괜찮았는데 타입스크립트 4.0 이상부터는 unknown 타입으로 기본으로 설정되어 있다. try { ... } catch (e) { console.log(e) } // 'throw' of exception caught lo..

Javascript 2024.03.25

[Javascript] 프로그래머스 - 최대공약수와 최소공배수

https://school.programmers.co.kr/learn/courses/30/lessons/12940 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr function solution(n, m) { return [gcd(n, m), lcm(n, m)]; } // 최대공약수 function gcd(a, b) { return b === 0 ? a : gcd(b, a % b); } // 최소공배수 function lcm(a, b) { return (a * b) / gcd(a, b); }

Javascript 2024.02.15

[Javascript] 형변환 - Number, BigInt

https://school.programmers.co.kr/learn/courses/30/lessons/181846 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 프로그래머스 문제를 풀고있다가 "287346502836570928366" 를 숫자로 바꿔주기 위해 Number(b) 를 사용하니까 287346502836570928366 인 값이 287346502836570900000 로 출력이 되었다. Number 의 숫자 범위는 다음과 같다. const biggestInt = Number.MAX_SAFE_INTEGER; // (2**53 - 1) => 900..

Javascript 2024.02.14

[Javascript] 백준 11720 - 숫자의 합

11720번: 숫자의 합 첫째 줄에 숫자의 개수 N (1 ≤ N ≤ 100)이 주어진다. 둘째 줄에 숫자 N개가 공백없이 주어진다. www.acmicpc.net 1. 내가 작성한 코드 const fs = require('fs'); const input = fs.readFileSync('/dev/stdin').toString().split('\n'); const c = Number(input[0]); const a = input[1].split('').map(Number); var s = 0; for(var i = 0; i < c; i++) { s += a[i] } console.log(s) 2. 강의에서 배운 코드 const fs = require('fs'); const input = fs.readFil..

Javascript 2024.01.30

[Javascript] 백준 2675 - 문자열 반복

2675번: 문자열 반복 문자열 S를 입력받은 후에, 각 문자를 R번 반복해 새 문자열 P를 만든 후 출력하는 프로그램을 작성하시오. 즉, 첫 번째 문자를 R번 반복하고, 두 번째 문자를 R번 반복하는 식으로 P를 만들면 된다 www.acmicpc.net const fs = require('fs'); const input = fs.readFileSync('/dev/stdin').toString().split('\n'); const c = Number(input[0]); for(var i = 1; i

Javascript 2024.01.30

[Javascript] 백준 2908 - 상수

2908번: 상수 상근이의 동생 상수는 수학을 정말 못한다. 상수는 숫자를 읽는데 문제가 있다. 이렇게 수학을 못하는 상수를 위해서 상근이는 수의 크기를 비교하는 문제를 내주었다. 상근이는 세 자리 수 두 www.acmicpc.net 1. 내가 작성한 코드 const fs = require('fs'); const input = fs.readFileSync('/dev/stdin').toString().split('\n'); const [a, b] = input[0].split(' '); var reverceA = Number(a.split('').reverse().join('')); var reverceB = Number(b.split('').reverse().join('')); console.log(Ma..

Javascript 2024.01.30

[Javascript] 백준 1316 - 그룹 단어 체커

1316번: 그룹 단어 체커 그룹 단어란 단어에 존재하는 모든 문자에 대해서, 각 문자가 연속해서 나타나는 경우만을 말한다. 예를 들면, ccazzzzbb는 c, a, z, b가 모두 연속해서 나타나고, kin도 k, i, n이 연속해서 나타나기 때 www.acmicpc.net 와 .. 코드작성보다 문제를 이해하는데 시간이 더 많이 소요된것 같다. 연속된 알파벳은 o 연속되지 못하는, 반복되서 나오지 않는 알파벳은 x happy new year 모두 통과 aba abab abcabc a a b a a b a b a b c a b c a 결과 : 1 ab aa aca ba bb a b a a a c a b a b b 결과 : 4 yzyzy zyzyz y z y z y z y z y z 결과 : 0 이런식인..

Javascript 2024.01.30

[Javascript] 백준 1152 - 단어의 개수

1152번: 단어의 개수 첫 줄에 영어 대소문자와 공백으로 이루어진 문자열이 주어진다. 이 문자열의 길이는 1,000,000을 넘지 않는다. 단어는 공백 한 개로 구분되며, 공백이 연속해서 나오는 경우는 없다. 또한 문자열 www.acmicpc.net 1. 처음 작성한 코드 const fs = require('fs'); const input = fs.readFileSync('/dev/stdin').toString().split('\n'); const a = input[0].split(" "); var sum = 0; for(var i = 0; i < a.length; i++) { if(a[i] !== '') { sum++ } } console.log(sum) 문제없이 바로 통과하긴 했는데 단순한 문제치고..

Javascript 2024.01.30

[Javascript] 백준 1546 - 평균

1546번: 평균 첫째 줄에 시험 본 과목의 개수 N이 주어진다. 이 값은 1000보다 작거나 같다. 둘째 줄에 세준이의 현재 성적이 주어진다. 이 값은 100보다 작거나 같은 음이 아닌 정수이고, 적어도 하나의 값은 0보 www.acmicpc.net 나는 아주 한글로 적혀있는 설명문이 제일 어려운 것 같다. const fs = require('fs'); const input = fs.readFileSync('/dev/stdin').toString().split('\n'); const count = Number(input[0]); const score = input[1].split(' ').map(Number); let newScore =0; const max = score.reduce((a,b) => ..

Javascript 2024.01.29
반응형