2024/11 15

11/07

오늘 배운 것 1. 자바스크립트의 콜백함수-콜백함수란 다른 코드의 인자로 넘겨주는 함수-콜백함수는 메서드가 아니라 함수이기 때문에 this를 바인딩해서 써야한다-콜백함수에서 this를 전달하기 위해 bind 메서드를 활용한다.var obj1 = {    name: 'obj1',    func: function () {        console.log(this.name);    }};//함수 자체를 obj1에 바인딩//obj1.func를 실행할 때 무조건 this는 obj1로 고정해줘!setTimeout(obj1.func.bind(obj1), 1000);var obj2 = { name: 'obj2' };//함수 자체를 obj2에 바인딩//obj1.func를 실행할 때 무조건 this는 obj2로 고정해줘..

일기 2024.11.07

11/06

오늘 배운 것 1. 데이터 타입-기본형과 참조형-포인터 개념인듯하다-깊은 복사와 얕은 복사 2. 실행컨텍스트-코드에 제공할 환경 정보를 모은 객체-호이스팅 -> VE, LE구성 -> this 바인딩 호이스팅-컨텍스트와 관련된 코드의 식별자들을 수집한다.-컨텍스트에서 사용되는 모든 식별자들의 선언을 코드 위로 땡겨온다.-함수 선언은 전체를 호이스팅한다. VariableEnvironment 와 LexicalEnvirionment-record와 outer로 구성된다-VE는 컨텍스트가 생성되는 시점의 LE의 스냅샷이다 this 바인딩-js에서 this는 전역에서 사용할 수 있는 특수한 키워드이다.-현재 컨텍스트의 스코프에 따라 this가 가리키는 대상이 다르다-일반적으로 메서드로 호출되었다면 호출한 객체, 아니..

일기 2024.11.06

11/05

오늘 배운 것 ES6 문법 1. 구조분해할당(destructing)1) 배열에 저장>>> let [value1, value2] = [1, 'val']; >>>let arr = ['val1', 'val2', 'val3'];>>>let [x, y, z] = arr;   // x => 'val1', y => 'val2', z => 'val3' 2) 객체에 저장let { key1, key2} = {   key1: val1,   key2: val2}; 3) 새로운 이름으로 저장let user = {   name: 'john',   age: 20};let { name: newName, age: newAge } = user;console.log("newName : ", newName); // newName : joh..

일기 2024.11.05

11/04

오늘 배운 것JavaScript 문법 기초 c, c++, c#을 해봤기 떄문에 대부분 문법은 익숙했다 몇가지 유의해야할 점 1. 변수 선언-변수 선언시 자료형을 명시하지 않는다.-세가지 변수 선언 키워드 var, let, const 2. 비교연산자-자료형을 명시하지 않기 때문에 암시적 형변환이 잦다.-자료형까지 엄밀하게 비교하는 ===, !== 연산자와 자료형을 형변환해서 비교하는 ==, != 연산자에 주의 3. 함수 반환형-함수 선언시 반환형을 선언하지 않고 그냥 return한다. 4. 생성자-c++이랑 비슷하다.-객체 외부에 생성자 함수를 정의한다.-Object.keys({object}), Object.values({object}) 함수로 key와 value를 알 수 있다-Object.entries(..

일기 2024.11.04

실습1 KPT

Keep박찬일:- 계획한 내용이 거의 된 것 같아서 좋았다 김동욱: - 개발 중간 까다로운 튜터의 요구사항을 반영 - 조용하고 차분한 분위기 주용찬:- 첫 프로그래밍 수업인데 팀원분들이나 매니저분들, 튜터님들이 친절해서 좋았습니다. - 비록 충돌이 나긴했지만 첫 프로그래밍이자 첫 프로젝트에서 이미지 업로드는 시간내로 안됐지만 필요한 나머지기능은 잘 작동해서 좋았습니다. Problem박찬일:- 깃 컨벤션이 잘 지켜지지 않았다. (커밋 메시지, 브랜치 관리)- 중간에 계획에 변경사항이 생겼을 때 미리 공유가 되지 않아 결과물을 보고 당황스러웠다.- 코드 리뷰가 이루어지지 않았다. -> 팀원간 코드 공유가 되지 않아 충돌 처리 과정에 어려움이 있었다. 김동욱: - 소통 미흡 - 설계 단계에서 구현할 기능들을 ..