반응형

분류 전체보기 269

[JavaScript] 스터디 4일차_ this (2) call, apply, bind

1. call 메서드 메서드의 호출 주체인 함수를 즉시 실행하도록 하는 명령 - call 의 첫번째 인자를 this로 바인딩 - 그냥 실행하면 this === 전역객체 but call 메서드를 사용하면 임의의 객체를 this로 지정 가능 Function.prototype.call(thisArg[, arg1[, arg2[, ...]]]) //원래는 함수호출로 window {...} 출력이나 첫번째 인자로 this에 {x:1} 전달 var func = function (a,b,c) { console.log(this,a,b,c); }; func(1,2,3) //window {...} 1 2 3 func.call( {x:1}, 4,5,6); // {x:1} 4 5 6 출력 객체의 메서드 를 call 메서드로 호..

[JavaScript] 스터디 3일차_ this (1)

this = 함수를 호출 할 때 결정되는(실행 컨텍스트가 생성될 때) 것 = 호출한 놈!! "나" 라는 단어를 부르는 사람에 따라 의미가 달라지듯이, this 는 아래의 "나"와 같은 역할을 한다. 1. 전역공간에서의 this ⭐ 전역공간에서의 this === window 전역변수를 선언하면 자바스크립트 엔진은 이를 전역객체의 프로퍼티로 할당한다. 자바스크립트의 모든 변수는 특정 객체의 프로퍼티로서 동작. 실행 컨텍스트는 변수를 수집해서 LexicalEnvironment(LE) 에 저장하고, 어떤 변수를 호출하면 LE를 조회해서 일치하는 프로퍼티가 있을 경우 반환함. 전역컨텍스트의 경우 LE는 전역객체를 그대로 참조. var a = 1; console.log(a); // 1 출력 console.log(w..

[JavaScript] 스터디 2일차_ 실행컨텍스트

실행컨텍스트(Execution Context) - 실행할 코드에 제공할 환경 정보들을 모아놓은 객체. - 실행컨텍스트가 활성화되는 시점에 선언된 변수를 위로 끌어올리고(호이스팅), 외부 환경 정보를 구성하는 등의 동작 ◼ 스택과 큐 - 스택: 출입구가 하나뿐인 데이터 구조. 즉 먼저 들어간 데이터가 가장 나중에 나오는 구조 - 큐: 양쪽이 모두 열려있는 데이터 구조. 먼저 들어간 데이터가 먼저 나오는 구조 즉, 실행컨텍스트는 동일한 환경에 있는 코드들을 실행할때 필요한 환경정보를 모아 컨텍스트를 구성하고 이를 콜 스택에 쌓아올렸다가, 가장 위에 쌓여있는 컨텍스트와 관련있는 코드들을 실행한다. ◼ 동작 순서 - 처음 자바스크립트 코드를 실행하면, 전역 컨텍스트가 콜 스택에 담기고 함수들이 담긴다. 하나의 ..

[WIL] 6월 2주차 회고 WIL (Weekly I Learned)

느낀 점 - 항해가 끝나고 약 3주만에 WIL을 쓴다. 사실 끝나고 1주일은 쉬었다 : ) 앞으로 어떤 공부를 할 것이며, 취업은 몇 달 안에 하고 싶은지, 어떤 회사를 가고싶은지 고민했다. - 이번 주차부터 자바스크립트 스터디를 시작했다. "코어 자바스크립트" 라는 책의 챕터를 스터디원들이 돌아가면서 발표하고, 궁금했던 점 및 심화 내용에 대해서 토론했다. 1강은 데이터 타입과 메모리 관련된 내용이었는데, 막연하게 알고 있던 내용을 생각보다 깊게 공부할 수 있는 기회가 되었다. - 요새 MBTI가 유행해서 간단한 MBTI 테스트를 만들었다. 막상 개발한 시간은 하루도 안걸렸는데, MBTI 로직(주제)랑 저작권 때문에 그림을 그리느라 한 2일 소요됬다... ㅎㅎㅎㅎㅎ 그림을 그나마 잘 그리는 편이라(?)..

개발일지/WIL 2021.06.16

[JavaScript] 스터디 1일차_ 데이터 타입

스터디는 코어자바스크립트 책을 바탕으로 진행했다. 1. 데이터 타입의 종류 1) 기본형 - 숫자, 문자열, 불리언, null, undefined + 심볼(symbol) -> ES6에서 추가됨 2) 참조형 - 객체 (배열, 날짜, 정규표현식, Map, WeakMap, Set 등) * 둘을 구분하는 기준? 기본형은 불변성을 띈다. 기본형을 복제할때 값이 담긴 주솟값을 바로 복제, 참조형은 값이 담긴 주솟값들로 이루어진 묶음을 가리키는 주솟값을 복제 2. 메모리와 데이터 1바이트 = 8개의 비트, 총 256개의 값을 표현할 수 있음. C/C++, 자바 등의 정적 타입 언어는 메모리의 낭비를 최소화하기위해 데이터 타입별로 할당할 메모리 영역을 나눔 자바스크립트는 숫자의 경우 64비트 = 8바이트를 확보하게 됨 ..

[JS] 프로그래머스 1단계 - 모의고사(완전탐색)

문제링크 코딩테스트 연습 - 모의고사 수포자는 수학을 포기한 사람의 준말입니다. 수포자 삼인방은 모의고사에 수학 문제를 전부 찍으려 합니다. 수포자는 1번 문제부터 마지막 문제까지 다음과 같이 찍습니다. 1번 수포자가 찍는 programmers.co.kr 코드 function solution(answers) { var answer = []; //수포자 3명의 찍는 패턴(반복 됨) let students = [ [1,2,3,4,5], [2,1,2,3,2,4,2,5], [3,3,1,1,2,2,4,4,5,5] ]; //수포자들의 점수 let score = [0,0,0]; //수포자별 점수 계산 for(let i=0; i

알고리즘 2021.06.09

[JS] 프로그래머스 1단계 - 체육복(greedy)

링크 코딩테스트 연습 - 체육복 점심시간에 도둑이 들어, 일부 학생이 체육복을 도난당했습니다. 다행히 여벌 체육복이 있는 학생이 이들에게 체육복을 빌려주려 합니다. 학생들의 번호는 체격 순으로 매겨져 있어, 바로 앞번 programmers.co.kr 코드 function solution(n, lost, reserve) { var answer = 0; let total = []; //전체 학생을 1로 세팅 for (let i=0; i

알고리즘 2021.06.09

[항해] 비전공자 개발자 취업 특강(쌀팔다 개발자 김병욱님)

1. 포트폴리오 - 30군데 지원해서 20군데 이상의 서류 합격 통보를 받았다! (와..) - 나의 개인 역량에 대해 적어놓으면 좋을 것 같다 - 개발 관련된 커리어가 아닌것은 뒤로 빼서 적는다! - 다들 비슷한 경험이라면, 어떻게 보여주는가(스토리)가 중요하다 - 워드, PPT로 PDF로 변환, 기존 템플릿 사용(wix, github, templates)으로 만들 수 있음. 노션 등 2. 첫 회사 고르기 - 첫 회사에 너무 많은 고민을 하지 않아도 됨 - 본인이 개발자로 시작하는 것이 더 중요함!! 3. 면접 - 면접 기회가 주어지면, 어떻게든 잡아야 함 - 기술면접은 개념을 외워서라도 가자 - 왜 개발을 시작했는가(비전공자)에 대한 스토리를 어떻게 풀어나가는지가 분위기에 중요하다. (대화거리를 이어가..

취업 관련 2021.06.09

[항해] 이력서/포폴/자소서 피드백 세션

실제 제출하신 항해분들의 이력서를 바탕으로 피드백 주셨다! 1. 이력서 제목을 눈에띄게 적어주면 좋겠다. ex) 집요한 개발자 2. 숫자 어필을 많이 하면 좋다 3. 메인 프로젝트를 다른 프로젝트보다 강조하자 4. Key Expertise 로 나의 메인 어필포인트(기술)를 적어서 면접 질문 유도 5. 각 프로젝트마다 나의 담당을 기술하는 것이 중요, 어떻게 해결했는지 이야기할 거리를 만들어야 함 6. 자기소개 서브타이틀 붙이고 섹션을 나누면 좋다. (but 가독성이 떨어지지 않도록, 폰트는 기본체) 7. 이력서 첫장에 어필포인트(4번) 필수 8. 깃헙 readme 정리는 필수 9. 이력서는 짧게 쓰는 것이 좋다. (최대 1장 미만) -> 링크를 굳이 타고 들어가게 하는것은 좋지 않음 10. 노션 or p..

취업 관련 2021.06.09

[JavaScript] 스파르타 자바스크립트 기초 인강(8강~끝)

1. 반복문 ◼ while while (조건) {조건 만족 시 실행할 코드} - while뒤의 조건이 계속 true라면 무한루프에 빠짐. 언젠가는 조건이 false를 return하여 while문을 끝나게 해야함 let temperature = 20 while (temperature < 25) { console.log(`${temperature}도 정도면 적당한 온도입니다.`) temperature++ // 증감연산자를 활용해서 온도를 변화시킵니다. } ◼ for while문보다 조금 더 명시적으로 반복문의 조건을 표함 for (begin; condition; step) {조건 만족 시 실행할 코드} for (let temperature = 20; temperature < 25; temperature++)..