일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- underscores
- DOM
- 코딩
- 코드스테이츠
- 해커톤
- JavaScript
- 엔퀸즈
- 취업
- this
- JS
- Instantiation Patterns
- 리액트
- grpahQL
- 포스기
- 자바스크립트
- ftech
- react
- 제일어려워
- array
- nqueens
- 일상
- vscode
- 초보
- 클라이언트
- underbar
- 알고리즘
- method
- 공부
- 개발
- 연습
- Today
- Total
목록공부 (10)
analogcoding
Toy 01번 문제. 가위바위보 게임에서 input 으로 들어온 숫자만큼 낼 수 있는 경우의 수를 모두 리턴하는 문제. 오늘 못 품~ 풀면 적어주겠따 ㅠㅠ subclass Dance party 스프린트 functional 방식으로 구현된 상속 패턴을 수도클래식컬과 클래스의 방식으로 리팩토링 후 css 해보는 스프린트. 1. pseudoclassical 리팩토링 모습 확인 후 커멘드 달기. pseudoclassical function Dancer (top,left,timeBetweenSteps) { const createDancerElement = function(){ let elDancer = document.createElement('span'); elDancer.className = 'dancer';..
체크포인트 this / setTimeout setTimeout 함수는 인자로 실행시킬 function 과 시간을 밀리세컨드 단위로 받는다. var name = "Window"; var alice = { name: "Alice", sayHi: function() { alert(this.name + " says hi"); } }; var bob = { name: "Bob" }; setTimeout(alice.sayHi.call(bob), 1000); 위에 경우 return 값은 즉시 bob say hi 가 실행된다. 먼저 setTimeout 함수에서 첫번 째 인자로 받는 함수는 함수식을 받는다. 여기에 call , apply 로 함수를 실행하거나 즉시 실행되는 함수 () 의 경우 두번 째 인자로 받는 시간이..
체크포인트 Object.create() var obj1 = { x: 10 }; var obj2 = Object.create(obj1); obj2.x += 10; // obj2 의 값을 수정 20 obj1.x = 15; // obj1 의 값이 변하였지만 obj2의 자체의 x는 이미 20 의 값을 // 가졌기에 변하지 않음. var result = obj2.x; // 20 var obj1 = { x: 10 }; var obj2 = Object.create(obj1); var obj3 = Object.create(obj2); var result = obj3.x + 10; // result 는 20이지만 console.log(obj3.x) // obj3.x 에 직접 값을 대입하지 않아서 obj3.x 는 10 자..
첫 수업 시작. 간단한 OT 를 시작으로 오전 시간이 지나가고 오후부터 본격적인 수업이 시작됬다. 가장 먼저 시작된 수업은 Effective Pair Programming and Feedback 페어프로그래밍을 하면서 네비게이터와 드라이버로 나뉘어 작업하는 방법을 다시 숙지하고 페어프로그래밍의 목적을 배우고 서로에게 긍정적인 영향을 줄 수 있는 피드백 방향에 대해 이야기를 나누었다. Simple Git Workflow git 을 이용한 간단한 명령어 몇가지를 복습하고 평소와 같이 fork - clone 작업을 마친 후 다른 사람과 함께 작성하고 git 을 통해 유지보수를 할 수 있는 방법인 remote 에 대해 간단히 배웠다. 서로 같은 master branch 에서 clone 하고 1. git remo..
재귀적으로 해결해보기. sumDigits 함수는 input으로 숫자를 받고 받은 숫자의 각 자릿수의 합을 리턴한다. 음수를 받는 경우 맨 앞 자릿수는 음수로 계산한다. Ex) input : 1148 => output : 14 (1+1+4+8) input : -316 => output : 4 (-3+1+6) 해결방안. 1. input 숫자를 양수, 음수에 따라 조건을 나눔. 2. 각 자릿수에 접근하기 위해 문자열로 변경. 3. 한 자릿수 양수,음수의 경우 바로 input을 리턴. 4. 양수의 경우 각 자릿수의 값을 reduce를 사용해 누적 값을 리턴. 5. 음수의 경우 - 제거 후 다른 요소에서 첫요소를 뺀 값을 다시 재귀적으로 실행. ㄴ 또 음수가 나올 경우 한 자릿수가 된다면 1. 으로 , 양수가 나..
문제. 인자로 받는 숫자의 각 자릿수를 반복적으로 곱해서 한자리수로 만들 때까지의 곱한 수를 리턴. Ex) 39 => 3. ㄴ 한자리 수가 될 때까지 반복 곱셈 : 3 * 9 = 27 => 2 * 7 = 14 => 1 * 4 = 4 . 총 3번 곱셈. 해결방안. 1-1. input num을 문자열로 바꾼 뒤 나눠서 각 자릿수를 곱할 수 있게 만듬. 1-2. 한자리수가 될 때까지 곱하는 조건을 while문으로 주고 곱할 때마다 카운트해서 카운트를 리턴. 2-1. 값이 0인 카운트를 전역변수로 생성. 2-2. input 숫자 num의 자릿수가 한 자리수라면 그대로 카운트를 리턴. 2-3. 아니라면 카운트++ 2-4. input num을 문자열로 바꾼 뒤 나눠서 각 자릿수를 곱한 값을 인자로 재귀함수로 만들어..
문제. 인자로 받는 문자열의 숫자가 2의 제곱수면 true를 아닐 경우 false를 리턴. Ex) input : 2 , 4 , 8 , 16 , 32 , 64 , 128 ... => output : true input : 1 , 22 , 27 , 222 ... => output : false 해결방안. 1. input값을 숫자로 받기. 2. for문을 사용해서 input을 2의 i ( i는 input보다 작게 ) 제곱과 비교. 3. Boolean 값 리턴. iput을 숫자로 변환하고 i 번 제곱할 i 를 설정해준다. var powerOfTwo = function(str) { var num = Number(str); // 숫자로 변환 for(let i = 1 ; i < num ; i++){ // input이..
문제. 인자로 받는 문자열의 값이 연속된 홀수일 경우 홀수와 홀수 사이에 '-'를 입력한 후 리턴. Ex) input : '454793' => output : '4547-9-3' 해결방안. 1. 문자열을 하나씩 분리해서 배열에 각 요소를 담음. 2. 값이 홀수인지 확인. 3. 연속된 문자열 또한 홀수일시 '-' 추가. 4. 다시 배열을 문자열로 합침. 먼저 문자열을 인자로 받는 함수를 만들어준다. var DashInsert = function(str){ } 문자열을 분리해서 배열로 만들고 for문과 if문으로 값이 홀수인지 확인. str = str.split('') for(let i = 0; i < str.length; i++){ if(Number(str[i])%2!==0 && Number(str[i+1..