0. 작성일?
2023년 6.14 수요일
1. 오늘 어떤 일을 했는지?
문법종합반 3주차 완료
야구게임 페어프로그래밍 및 리팩토링 -> 매소드명으로 분리하기!
this 바인딩
->너무 시간 많이 써서, 잠시 내려두고 며칠뒤 머릿속에서 정리가 되면 다시 접근하기로 함.(금~토요일 예정)
콜백함수 개념정리
-> 이건 얼마 안걸렸는데, 생각보다 쉽게 받아들여짐. 다만 this바인딩에 정신을 빼앗겨서 블로그 글 정리는 못함.
아래쪽은 슬슬 정리한것.
github star많은 레포, 항해99 실전프로젝트 우수작 코드 구경
문법종합반 4-5주차 보면서 흥미로운 부분만 먼저 미리 읽어보기.(클로저, 콜백함수, 콜백지옥의 개념)
클린코드(로버트C.마틴) 책 배송와서 훑어봄.
2. 내가 모르는것? 몰랐던 것?
- this
- 함수형 프로그래밍 -> (민승추천)클린코드 보면서 실천해보기.
- hash map
- 문자열+스프레드연산법
- 클로저
- 콜백함수->엄밀히 말하면 비동기처리의 방식이라고 볼 수는 없고, 순차처리방식임.
- async, await => 이거 좀 공부 필요.
- promise
3. 알게된점? 어떤 성장을 이루어냈는지?
하나를 깊게 파는건 좋지만, 큰 그림을 놓치지 말것.
코드를 작성하든, 있는 코드를 수정하든 하루에 강의보다 코드를 작성하는 시간이 더 많아야 함.
4. 어떤 삽질을 했는지? 왜?
this 개념을 찾다가 너무 깊게 들어가서,
그 깊은 개념을 이해하기 위해 DOM, 이벤트핸들러(어트리뷰트, 프로퍼티, 메서드 방식)내부의 this, 전역객체의 개념,
브라우저가 위임받은 함수인 이벤트헨들러 내부의 this가 전역객체를 지칭하는 이유(브라우저는
이벤트 핸들러에 들어있는 함수의 주소값(프로퍼티)를 가져오는게 아니라, (암묵적으로) 저 함수를 파싱하여 일반 함수를 만들어버림(여기서 this는 strict mode가 아닐때 전역객체를 가리킴)...
이런식으로 간단하게 작성하려던 블로그글이 너무나 많은 방향타가 생겨버려서 병렬로 한꺼번에 이해를 하려다가 정작 중요한 주제에 대한 이야기를 하기 힘들어졌다. 결국 도저히 글을 정리할수가 없어서 우선 임시저장 해두고, 개념이 완전히 정리되면 좀 다져서 블로그에 다시 담아보기로 했다.
5. 깨달은 점?
블로그 글 작성 전에 어느정도 개념 정리를 따로 하고, 노트나 메모장에 개념을 정리한 뒤에 글로 옮겨적어보기.
글을 적으면서 내용을 정리하려고 하기엔, 그렇게 쉽게 정리되는 지식이 아님.
그리고 리팩토링 하고, 클론코딩 하나 해볼것.
6. 참고링크, 공부내용
Deepdive 책 내용중.
\\this는 자기자신이 속한 객체 또는 자신이 생성할 인스턴스를 가리키는 자기참조변수(self-referencing variable) 이다.
따라서 this는 참조하는 객체, 또는 인스턴스의 매서드나 프로퍼티를 참조할 수 있다.(JS Deepdive p.343)
this는 일반적으로 객체(object)의 매서드 내부 또는 생성자 함수 내부에서만 의미가 있다. (JS Deepdive p.345)
=> javascript의 엄격모드('use strict')에서는 기본 바인딩을 하면 undefined가 나온다. (즉, 쓸데없어서 기능 없애버림)
https://tokkic.tistory.com/206
readline 한 줄 씩 입력 받기
언어마다 코딩테스트의 입출력시에 자주 쓰이는 것들이 있다 input, cin, scanf, getline 등등 각각 공백을 기준으로나 줄을 기준으로 입력을 받는다 자바스크립트도 공백을 기준으로 한 input 이 있지
tokkic.tistory.com
https://lakelouise.tistory.com/140
[Node.js] 자바스크립트 콘솔에서 입력 받는 방법
🎯 Node.js 콘솔창 입력받기 백준에서 알고리즘 문제를 풀 때 자바스크립트 입력받는 방법을 알아보자! 📝 한 줄 값 입력받기 자바스크립트에서는 readline 모듈을 이용하면 콘솔을 통해 값을 입력
lakelouise.tistory.com
https://velog.io/@leenzy/readline-%EB%AA%A8%EB%93%88-%EC%82%AC%EC%9A%A9%ED%95%98%EA%B8%B0
readline 모듈 사용하기
Node.js로 백준 문제를 풀 때 자주 사용되는 readline 모듈의 기본적인 내용을 다뤄보았습니다. 모듈은 커녕 기본 문제에 손도 대지 못해 백준으로 문제푸는걸 포기했던 과거의 저에게 바칩니다.
velog.io
https://developer.mozilla.org/ko/docs/Web/API/setTimeout
setTimeout() - Web API | MDN
전역 setTimeout() 메서드는 만료된 후 함수나 지정한 코드 조각을 실행하는 타이머를 설정합니다.
developer.mozilla.org
https://velog.io/@jakeseo_me/2019-04-01-1904-%EC%9E%91%EC%84%B1%EB%90%A8-2bjty7tuuf
자바스크립트 개발자라면 알아야 할 33가지 개념 #3 값(value) vs 참조(reference) (번역)
들어가기 전에 이 포스팅은 https://github.com/leonardomso/33-js-concepts 에 있는 포스팅들을 번역한 것입니다. 오역이나 의역이 있을 수 있습니다. 지적해주시면 확인 후 바로 정정하겠습니다. original sourc
velog.io
https://seungtaek-overflow.tistory.com/21
[JS] 알쏭달쏭 자바스크립트 this 바인딩
Java, C# 같은 객체지향 프로그래밍 언어들은 this라는 키워드를 사용한다(Python 에는 self라는 키워드가 있다). 이때 this가 의미하는 것은 해당 코드를 실행하는 클래스의 인스턴스를 나타낸다. 자바
seungtaek-overflow.tistory.com
https://dev-note-97.tistory.com/307
[Javascript] this 바인딩 규칙
이 글은 You Don't Know JS - this와 객체 프로토타입, 비동기와 성능 책을 읽고 정리한 내용입니다. 0. 서론 this는 기본적으로 호출부(함수가 어떻게 호출됐는가?)에서 함수를 호출할 때 바인딩 된다.
dev-note-97.tistory.com
아 다르고 어 다른 자바스크립트의 this 바인딩
동적으로 결정되는 this 바인딩 자바나 C++ 같은 클래스 기반 언어와 다르게 자바스크립트는 함수 호출 방식에 따라 this 바인딩이 결정됩니다. 그렇기 때문에 this 바인딩이 되는 상황을 알기 위해
wonjaetech.tistory.com