일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
- react
- typescript
- Chart.js
- React Native
- 타입스크립트
- 폰트적용하기
- 2022
- TSDoc
- 공통컴포넌트
- returnType
- reactjs
- 타입좁히기
- 성능최적화
- CSS
- click and drag
- 제네릭
- 누구나 자료구조와 알고리즘
- NonNullable
- vue.js
- 개발콘텐츠
- 레이아웃쪼개기
- JS console
- 커스텀
- 반복줄이기
- 티스토리꾸미기
- 리액트
- javascript
- const 단언문
- utilty type
- React.js
- Today
- Total
목록Development (382)
몽땅뚝딱 개발자
function solution(number, k) { const result = []; for (let i=0; i 0 && result[result.length - 1] 0) { k--; result.pop(); } result.push(number[i]); } result.splice(number.length - k, k); return result.join("");}
function solution(people, limit) { people.sort((a, b) => a - b) let count = 0 while (people.length !== 0) { if (people[0] + people[people.length-1]
이 문제는 처음 프로그래머스 시작했을 때는 못 풀었던건데...문제를 계속해서 풀다보니까 접근방법도 알겠구 잘 풀리는 듯🤔 function solution(progresses, speeds) { let answer = [] const getCompletedTaskCount = () => { let count = 0 while (progresses.length > 0 && progresses[0] >= 100) { progresses.shift(); speeds.shift(); count++; } return count; } while (progresses.length > 0) { for (let i = 0; i = 100) { con..
🚀 비교 JSCHermes특징 meta에서 React Native만을 위해 만들었다.컴파일 방식JIT(Just-In-Time)런타임에 코드를 컴파일하는 JIT(Just-In-Time)을 사용한다.AOT자바스크립트 코드로 실행 전 네이티브 머신 코드로 컴파일하는 선행 컴파일(AOT)을 사용한다. 미리 컴파일하여 바이트코드 형식으로 변환한다. 이를 통해 앱 시작 속도가 빨라지고 런타임 성능이 향상된다.성능 헤르메스는 일반적으로 JSC보다 빠르며, 특히 저가형/구형 기기에서 더 빠르다.메모리 사용량메모리 관리를 위해 자동 가비지 컬렉션을 제공하며 IOS와 macOS 환경에서 최적화가 잘 되어있지만 메모리 사용 측면에서는 헤르메스보다 다소 무겁다고 평가된다. 하지만 최신 하드웨어에서는 성능차이가 크게 나지 않..
보호되어 있는 글입니다.
1. 자체에서 제공하는 디버깅툴 사용 - Open Debugger: 사용하는데 한계가 있어서 Reactron을 선택했다.- Element Inspector: 간단히 padding, margin 같은 속성을 체크하기는 좋다. 하지만 각 요소를 웹 개발자도구처럼 각 태그나 class명, 부모-자식 관계를 명확히 파악할 수 없어서 상세하게 보기가 힘들다. 대책 마련 중..(🔨) 2. Reactron커넥션 별로 확인할 수 있다. 더 많은 기능이 있는데 아직 사용해보지는 않았다. 1. TimelineAPI 호출 시 Request, Response를 굉장히 상세히 사용할 수 있으며 각 요청을 손쉽게 복사하여 공유할 수 있다. (이게 가장 편리하다!) 2. State: Redux, mobX 같은 상태관리 라이..
function solution(cacheSize, cities) { const HIT = 1, MISS = 5 const cache = [] let totalTime = 0 if (cacheSize === 0) return MISS * cities.length for (let i = 0; i = cacheSize) { cache.shift() } } cache.push(searchTarget) } return totalTime}
1. indexOf로 배열자체의 위치를 바꿨다가 시간초과되고... (‼️)2. Map으로 풀었다. function solution(players, callings) { const playerIndexes = {}; players.forEach((player, index) => { playerIndexes[player] = index; }); callings.forEach(name => { const currentPlayerPosition = playerIndexes[name]; const prevPlayer = players[currentPlayerPosition - 1]; players[currentPlayerPosition] = ..
처음에 읽자마자 "이건 트리다!"라고 당당하게 생각한 뒤 코드를 짰다. 그런데.. 최소경로를 구하기위해 DFS로 접근하려고보니 트리라는 자료구조가 이 문제와 맞지 않다는 판단이 들었다. 더 정리를 해보자면 단순히 부모-자식 관계를 갖고있고 노드를 순차적으로 방문할 수 있다는 사실 하나로 트리로 접근했지만... 상위 부모가 하나인 트리가 이상해보였다. 그리고 키패드 구조상 트리처럼 단방향이 아닌 서로 연결될 수 있는 양방향 연결이 가능하고 싸이클이 존재하는 자료구조가 필요하다는 사실을 깨닫는다. 예전에 공부했던 자료구조 책을 펼쳐보고 '이건 그래프로 풀어야 하는거구나' 이마를 탁 치고 그래프로 접근했다. (조금 성장한 듯..) 그래프에 대해 공부하며 맨해튼 거리에 대해서도 알게됐다. 알고리즘 넘 재밌어....
처음 구구절절 Date로 풀다가 테스트케이스 3번이 해결되지않아서 힌트를 봤더니 prev를 한 뒤 현재 이동한 시간이 오프닝 시간 내에 있는지 검사했어야 헸다. Date로 하다보니 너무 코드가 구구절절했지만 푼게 아까워서 집착하다가.... 결국 버리고 새롭게 품..^0 ^ const prev = (time) => { time -= 10 return time { time += 10 return time > videoLength ? videoLength : time}const checkOpeningTime = (time, openingStartTime, openingEndTime) => { return time >= openingStartTime && time { const [mm, ss] ..