목록전체 글 (146)
게으른개발너D
https://school.programmers.co.kr/learn/courses/30/lessons/42883# 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr Question 어떤 숫자에서 k개의 수를 제거했을 때 얻을 수 있는 가장 큰 숫자를 구하려 합니다. 예를 들어, 숫자 1924에서 수 두 개를 제거하면 [19, 12, 14, 92, 94, 24] 를 만들 수 있습니다. 이 중 가장 큰 숫자는 94 입니다. 문자열 형식으로 숫자 number와 제거할 수의 개수 k가 solution 함수의 매개변수로 주어집니다. number에서 k 개의 수를 제..
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/lx7Zq/btsnkL1KxOi/tW6dvO0UlW471YWBLz9h41/img.jpg)
Array prototype 1. Array.prototype.copyWithin( ) 배열의 일부를 얕게 복사한 뒤, 동일한 배열의 다른 위치에 덮어쓰고 그 배열을 반환한다. 이 때, 크기(배열의 길이)를 수정하지 않고 반환한다. array.copyWithin(target, start, end); index target 자리에 array의 index start에서 end 전까지의 element를 복사해서 넣음 array.copyWithin(target, start); index target 자리에 array의 index start에서 끝까지의 element를 복사해서 넣음 [1, 2, 3, 4, 5].copyWithin(-2); // [1, 2, 3, 1, 2] [1, 2, 3, 4, 5].copyWi..
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/sc63W/btsnj8JznQR/tBJAvzliinKeddr2K6MdY1/img.jpg)
String prototypes 1. String.prototype.charCodeAt( ) 주어진 인덱스에 대한 UTF-16 코드를 나타내는 0부터 65535 사이의 정수를 반환 const sentence = "Hi"; // "문자열".charCodeAt(문자열 자릿수); const char = sentence.charCodeAt(0); // "Hi"에서 0번째 index인 'H'를 번호로 변환 console.log(char); // 72 cf) String.fromCharCode() - 아스키코드표 번호 코드 번호 코드 번호 코드 33 ! 64 @ 95 _ 34 " 65 A 96 ` 35 # 66 B 97 a 36 $ 67 C 98 b 37 % 68 D 99 c 38 & 69 E 100 d 39 ' ..
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/ciUPcl/btsnoEmSeZv/OP6cKB1ZKzofrrqTTllOh1/img.jpg)
Object Setting the Initial Value const arr = ["a", "b", "a", "a", "b", "c", "a", "b"]; const obj = {}; for(const a of arr) { if(obj[a] === undefined) { obj[a] = 1; } else { obj[a] += 1; } } console.log(obj) // { "a": 4, "b": 3, "c": 1 } 이렇게 할 수도 있지만 논리 연산자 || 를 이용하여 한 줄로 작성할 수도 있음 const arr = ["a", "b", "a", "a", "b", "c", "a", "b"]; const obj = {}; for(const a of arr) { obj[a] = (obj[a] || 0) +..
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/148Wd/btsnn7bRMtp/PK8WPqZhOKcTLrhXKkkj00/img.jpg)
Math Method 1. Math.sqrt( ) 숫자의 제곱근 반환 Math.sqrt(4) // 2 Math.sqrt(2) // 1.414213562373095 Math.sqrt(0) // 0 Math.sqrt(-3) // NaN 2. Math.random( ) 0 이상 1 미만의 구간에서 랜덤 수 생성 // 3이상 64이하의 랜덤 숫자 생성 const min = 3; const max = 64; const num = Math.floor(Math.random() * (max - min + 1) + min); 3. Math.trunc( ) 주어진 값의 소수부분을 제거하고 숫자의 정수부분을 반환. Math.floor()를 쓸 수도 있지만 숫자가 마이너스 값일 경우 소수부분을 제거한 값과 다른 값이 나오기때..
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/etFajA/btsni9heW46/3CKSQ0y3kU7cKeUVkEX5T1/img.jpg)
Number Prototypes 1. Number.prototype.toString() 10진수를 n진수로 변환 const num = 5; // 5를 2진수로 변환 const change1 = num.toString(2); console.log(change1); // output:{string} "101" // 5를 4진수로 변환 const change2 = num.toString(4); console.log(change2); // output:{string} "11" 반대) (Built-in Objects) parseInt() [Built-in Objects] 까먹는 것 정리 Built-in Objects (표준내장객체) 1. parseInt() n진수를 10진수로 변환 (문자열 인자를 파싱하여 특정 ..
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/czNtS4/btsnnNdBJzX/Pp1cQFP0vgMu159RxA26tK/img.jpg)
Built-in Objects (표준내장객체) 1. parseInt() n진수를 10진수로 변환 (문자열 인자를 파싱하여 특정 진수의 정수를 반환) const numStr = '101'; // 2진수 '101'을 10진수로 변환 const change1 = parseInt(numStr, 2); console.log(change1); // output:{number} 5 // 5진수 '101'을 10진수로 변환 const change2 = parseInt(numStr, 5); console.log(change2); // output:{number} 26 반대) Number.prototype.toString() [Number] 까먹는 것 정리 Number Prototypes 1. Number.prototyp..
https://school.programmers.co.kr/learn/courses/30/lessons/49189 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr Question n개의 노드가 있는 그래프가 있습니다. 각 노드는 1부터 n까지 번호가 적혀있습니다. 1번 노드에서 가장 멀리 떨어진 노드의 갯수를 구하려고 합니다. 가장 멀리 떨어진 노드란 최단경로로 이동했을 때 간선의 개수가 가장 많은 노드들을 의미합니다. 노드의 개수 n, 간선에 대한 정보가 담긴 2차원 배열 vertex가 매개변수로 주어질 때, 1번 노드로부터 가장 멀리 떨어진 노드가 몇 ..
https://school.programmers.co.kr/learn/courses/30/lessons/43238 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr Question n명이 입국심사를 위해 줄을 서서 기다리고 있습니다. 각 입국심사대에 있는 심사관마다 심사하는데 걸리는 시간은 다릅니다. 처음에 모든 심사대는 비어있습니다. 한 심사대에서는 동시에 한 명만 심사를 할 수 있습니다. 가장 앞에 서 있는 사람은 비어 있는 심사대로 가서 심사를 받을 수 있습니다. 하지만 더 빨리 끝나는 심사대가 있으면 기다렸다가 그곳으로 가서 심사를 받을 수도 있습니다..
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/lWt0S/btspUnQF4QL/Jz3KdrWjD2wfyoPEIm7Et0/img.jpg)
React는 cross-site scripting 공격을 막기 위해서 html 태그가 담겨있는 string 형태를 렌더링하면, 태그로 나오지 않고 문자열 그대로 렌더링되게 한다. {svgArr?.map((grids: any[]) => grids.map((grid, i) => { return ( {grid} ); }) )} 여기서 svgArr은 svg 태그가 담겨져 있는 2차 배열이며, 이걸 화면에 나타내면 이렇게 나온다. 하.. 괴롭다 괴로워ㅠㅠㅠ 문자열을 html 형태로 렌더링하게되면 취약하지만 대비하고 있다! 라고 생각한다면, 해결하는 방법이 있다. dangerouslySetInnerHTML {svgArr?.map((grids: any[]) => grids.map((grid, i) => { retur..