본문 바로가기

반응형

코드스테이츠

(46)
2021년 5월 16일 코드스테이츠 DAY-42 동기, 비동기 예습 드림코딩 엘리님의 설명을 받아 적으며 학습한 내용임을 안내드립니다. 1. 동기와 비동기의 차이점 자바스크립트는 동기적이다. => 호이스팅(var변수와 함수선언이 자동적으로 제일 위로 올라가는 현상)이 된 이후부터 코드가 작성순서에 맞추어 차례대로 실행된다는 말. 비동기라는 말 : 언제 코드가 실행될 지 예측할 수 없다는 말. (ex: setTimeout을 이용한 경우 비동기적인 실행방법) setTimeout(function(){ console.log('Hello World'); }, 1000) 콜백함수 : ('Hello World')를 console.log하는 setTimeout안의 함수는 바로 실행되는 것이 아니라, setTimeout이라는 함수의 parameter(인자)로서 지정한 시간 이후에 실행된..
2021년 5월 16일 코드스테이츠 DAY-42 자료구조 코플릿 문제 저번주 목요일(5. 13. ~ 5. 15.)부터 블로깅을 하지 않았다. 자료구조에서 매우 절었기 때문인데 개념을 이해했다고 생각했으나 코플릿을 통해 응용하는 과정에서는 맥을 못추었다. 침착하게 다시 돌아보는 와중에 14일에 풀지 못했던 문제를 푸는 과정 중 AHA 모먼트가 있었던 것을 적어보고자 한다. 인접행렬에서 정점과 정점이 이어져 있는지 여부를 반환하는 문제였고 스프린트 리뷰시간에서 코드스테이츠 스태프는 이 문제를 큐로 풀었다는데 글쎄... 나는 이 문제는 재귀로 해결하여야한다라고 생각했다. 첫번째 시도 function getDirections(matrix, from, to) { //범위를 초과해서 from과 to가 입력되면 false를 리턴 if (from + 1 > matrix.length ||..
2021년 5월 12일 코드스테이츠 DAY-38 JSON.stringify 구현 관련 정리 JSON.stringify를 함수로 구현해보는 스프린트와 재귀함수를 이용하여 Tree UI를 만드는 스프린트의 리뷰 시간에 스스로 정리해보면 좋을 질문을 주었고 이에 스스로 답을 해보고자 한다. 왜 우리는 배열과 객체를 원시타입과 똑같은 방식으로 문자열화를 시키면 안 되는가? 원시타입을 문자열로 바꾸는 메소드인 String()을 사용하면 어떻게 나오는지 코드로 확인해보자. let arr = [1, 2, 3] undefined String(arr) "1,2,3" //괄호가 벗겨진, 즉 더 이상 배열임을 알아차릴 수 없는 상태가 되었다. let obj = { name : 'Charles', age : 29, job : 'developer' } undefined String(obj) "[object Objec..
2021년 5월 11일 코드스테이츠 DAY-37 JSON 예습 + 첫 프로그래머스 JSON(JavaScript Object Notation) : 서로 다른 언어가 서로 데이터를 전송하기 쉽게 만든 데이터 표준 JSON.parse() : 인자로 전달된 값을 객체로 변형할 수 있는 메소드. JSON.stringify() : 인자로 전달된 객체를 JSON 포맷으로 변형한 텍스트로 바꾸는 메소드. 첫 프로그래머스 사실 알고리즘 뭐 중요하겠어라고 생각을 많이 하고 있었는데 지금 페어인 분께서 그렇게그렇게 중요하다고 해서 풀어봤다. 아 물론 LV1. 근데 무지하게 어렵다 ㅠㅠㅠ 미친 ㅠㅠㅠㅠ 이거 푼다고 2시간이 갔다. 레벨 2를 슥슥 풀어야지 대기업에 간다는데 ㅋㅋㅋㅋㅋㅋㅋㅋㅋ이게 뭐야 아무튼 신박했다. 누가 탈락했는지는 궁금하지 않았지만 머리를 이상한 쪽으로 많이 회전시키게 한다. 다들 프로..
2021년 5월 10일 코드스테이츠 DAY-36 객체 지향 프로그래밍 정리 객체 지향 프로그래밍의 특징 4가지 캡슐화 : 실제 객체 모습의 추상화를 위하여 데이터와 기능을 모았다. 추상화 : 메소드로 예를 들면 내부에 어떤 로직이 있는지 자세히 몰라도 메소드의 이름만 보고도 기능을 짐작할 수 있게하는 것 상속 : 자식 클래스에서 부모 클래스의 속성과 메소드를 활용할 수 있다. 다향성 : 클래스는 하나더라도 인스턴스는 다양한 다른 키 값을 갖는다. 객체 지향과 자바스크립트 자바스크립트는 객체 지향 언어인가? 아니다. 자바스크립트는 객체 지향 프로그래밍을 할 수 있는가? 맞다. 면접 질문 시 예상 대답 : "자바스크립트는 객체 지향 언어는 아니고 프로토타입 지향 언어라고 들었습니다. 프로토타입에 대해서 깊게 알고 있지는 않지만, 다르다는 점을 알고 있습니다. 자바스크립트에서 객체 ..
2021년 5월 5일 코드스테이츠 DAY-31 첫 HA (HA대비 코플릿 복습 및 React capture time에 봤던 과제 미리 구현하기) 5월 6일 목요일 내일 첫 HA를 치르게 된다. 알고리즘을 만들어내는 능력이 많이 부족하다고 생각되는 가운데 시험을 치게되어 다소 걱정이 되고(그래서 코플릿 중 어려웠던 부분을 한번 다시 살펴 볼 예정이다.) 게다가 이번 HA에는 sprint를 따라가긴 했지만 아직은 낯선 REACT의 과제형 문항이 있다고 하니 긴장은 덤이다. 하지만 코드스테이츠 나름의 배려인지 REACT과제에서 만들어야하는 것의 작동 GIF를 아주 잠시 보여줬기에 힌트를 얻었고 이를 미리 오늘 아무것도 없는 무의 상태에서부터 구현해 볼 생각이다. 코드스테이츠에서 항상 만들었던 것에 더하여 완성을 했어서 막막함이 있지만 일단 당장 내일 시험이니 당장에 뛰어들어 보자!
2021년 5월 3일 코드스테이츠 DAY-29 React(unshift가 아닌 useState를 통한 정보의 최신화 그리고 select tag를 통한 filter된 정보만 보여주기) 2021년 5월 2일 React State & Props 예습(이벤트 핸들링을 통한 정보 전달 + ubuntu npm run test / npm run start ( 내일부터 들어가는 React State & Props를 대비하여 미리 sprint를 진행해보았다. 그 중 핵심이라고 생각하는 이벤트 핸들링 부분을 적겠다. 일단 언급할 부분부분의 코드는 아래와 같다. const Tweets = ( bedeveloper.tistory.com 위 어제 일자로 된 글을 보면 unshift로 새롭게 만든 tweet을 넣은것이 실제로 tweet창에는 정상적으로 추가 되었으나, testcase는 통과하지 못했음을 언급했었다. 해결방법은 결국에 useState의 set함수로 기존 dummyTweet에 새로운 tweet을..
2021년 5월 2일 React State & Props 예습(이벤트 핸들링을 통한 정보 전달 + ubuntu npm run test / npm run start (React) 오류 해결) 내일부터 들어가는 React State & Props를 대비하여 미리 sprint를 진행해보았다. 그 중 핵심이라고 생각하는 이벤트 핸들링 부분을 적겠다. 일단 언급할 부분부분의 코드는 아래와 같다. const Tweets = () => { const [name, setName] = useState(''); const [sentence, setSentence] = useState(''); const handleButtonClick = () => { const tweet = {}; tweet.id = data.length + 1; tweet.username = name; tweet.content = sentence; }; const handleChangeUser = (event) => { setName(e..

반응형