프로그래밍446 프로토타입과 클래스 프로토타입(prototype) - 자바스크립트에서 기본 데이터 타입을 제외한 모든 것이 객체 - 프로토타입 객체를 이용하여 객체를 만듦 - 객체 안에 '__proto__' 속성이 원형을 의미하는 프로토타입 객체를 참조하는 숨겨진 링크가 있음 - 이 링크를 프로토타입이라고 정의 // 예시 코드 class Human { constructor(name, age) { this.name = name; this.age = age; } sleep() { return this.name; } } let kimcoding = new Human('이코딩', 30); __proto__ 객체가 만들어지기 위해 사용된 원형인 프로토타입 객체를 참조하는 링크를 보유 클래스, 인스턴스, 프로토타입의 관계 클래스(청사진)+constr.. 2022. 5. 25. 객체 지향 프로그래밍 객체 지향 프로그래밍 의의: 데이터와 기능이 별개로 취급되지 않고, 한 번에 묶여서 처리 가능 OOP - 사람이 세계를 보고 이해하는 방법을 흉내 낸 방법론 - 프로그램 설계 철학 - 모든 것은 객체로 그룹화 - 4가지 컨셉 캡슐화(encapsulation): 데이터와 기능을 하나의 단위로 묶는 것, 코드나 데이터의 은닉에 포커스 // TypeScript 문법입니다 // 클래스 내부에서만 쓰이는 속성 및 메서드를 구분시키기 위해 private이라는 키워드를 제공 // 은닉화를 도와주는 기능이 JavaScript에 지원하는 브라우저가 적음 class Animal { private name: string; constructor(theName: string) { this.name = theName; } } n.. 2022. 5. 25. 클래스와 인스턴스 객체지향프로그래밍: 데이터와 기능을 한곳에 묶에서 처리 - 하나의 청사진(blueprint)를 만들고 -> class 클래스에 속성과 메소드를 정의하고, 인스턴스에서 사용 // ES5 문법 function Car(brand, name, color) { this.brand = brand; this.name = name; this.color = color; } //ES6 클래스 작성 문법 class Car{ constructor(brand, name, color) { this.brand = brand; this.name = name; this.color = color; } } - 청사진을 바탕으로 객체(object)를 만드는 -> instance 인스턴스를 만들 때 new키워드 사용 let avante = .. 2022. 5. 25. 고차함수 코플릿 고차함수 이론 - 일급객체: 변수에 할당 가능 다른 함수의 전달인자로 전달 가능 다른 함수의 결과로서 리턴 가능 (함수를 리턴하는 함수를 커링함수라고 함) javascript에서 함수는 일급객체 - 배열 내장 메서드(객체 안의 함수) map: 배열의 각 요소에 콜백 함수를 적용시켰을 때, 새로운 배열을 리턴 filter: 배열의 각 요소에 콜백 함수를 적용시켰을 때, true를 리턴하는 요소들만 모은 새로운 배열을 리턴 reduce: 배열의 각 요소를 콜백 함수에 맞게 하나로 응축시킨 값을 리턴 기타 등등 문제풀이 일반적인 함수 리턴 function returnFunction() { // TODO: 여기에 코드를 작성합니다. return function () { return'Hello HoF!'; } }.. 2022. 5. 24. 코드스테이츠 section 2 OT 데일리 코딩 - 매일 아침 9시 캘린더 확인 - 30분간 레퍼런스 없이 코드 작성(코플릿) - 이후에 집착없이 레퍼런스 확인 - 10시에 반드시 1차 제출 완료 - 과제, 데일리 코딩은 제출에 의의가 있음(not 평가) - 단, 얻어가는 건 각자 하는만큼에 달림 섹션2부터 배운 내용을 활용하는 커리큘럼 - 고차함수 - JS/Node - React - HTTP/네트워크 - Web Server 주의사항 - 출결기준: 9시 이전 로그인 필수(6시 이후 출석 인정) 1일 학습시간 8시간 이상 준수 - 공가신청: 결석일 이전에 미리 이슈쉐어링 접수 공가인정은 당일 가능 - 과제제출: 유닛 종료일 자정까지 제출 미제출 2회: 1차 경고 미제출 4회: 2차 경고 미제출 5회: 제적 2022. 5. 24. 선배와의 만남(풀스택 선배님 초청) 선배와의 만남(풀스택 선배님 초청) - 적극적 커뮤니케이션 / 부지런하고 - 취업에 대한 지나친 고민은 자제하라 - 주니어 레벨은 개발 지식보다 학습 태도, 커뮤니케이션적인 측면을 많이 봄 - 커리어코칭을 적극 활용하자 - 취업은 반드시 되니 고민을 줄이고, 학습을 충실히 하며 어디에 취업할지를 고민하라 - 복습이 중요 / 체력관리도 중요 - 개인 프로젝트를 오전시간에 진행하면서 개발 실력을 키우심 - 내가 아는게 적고 남에게 도움이 안될 것 같아도 블로깅 쓰기 - 블로깅 마지막에 “혹시나 잘못된 개념 전달이 있다면 댓글 부탁드립니다. 저의 성장의 도움이 됩니다" 문구 넣는것도 추천 2022. 5. 23. 프론트엔드 인터뷰 문제 답해보기 답변하기 위한 준비 - 기술 공부하는 방법: learning curve, 문제를 정의하고 해결하는 것 - 근거를 말할 때 공식문서 말하면 좋음(예: HTML Living Standard) - 정의(정답)를 말하고, 쉽게 사례 말하고, 했었던 프로젝트를 설명하면서 이해를 높이기 - 면접관에 따라 실제 예시를 먼저 말하고, 추가로 정의질문이 들어왔을 때, 제대로 답변하면 더 좋을 수 있음 예시 질문과 답변 일반적으로 JavaScript를 불러오기 위해 `` 요소를 `` 요소가 끝나기 직전에 배치합니다. 이유가 무엇인가요? 이유1. html을 다 파싱하고 자바스크립트를 시작하기 위해서 사용 - DOM의 혼선을 방지하기 위해서 이유2. 사용자에게 보이는 화면 갱신 속도 개선 - 일반적으로 화면에서 스크립트의 로.. 2022. 5. 23. 반복문 - 정의: 같거나 비슷한 코드를 여러 번 실행시켜야 할 경우에 쓰이는 구문 - 예시 let sum = 1; sum = sum + 2; sum = sum + 3; sum = sum + 4; console.log(sum); 반복할 조건을 코드로 작성 let sum = 1; //sum과 숫자(n)의 합을 sum에 대입 //숫자는 2부터 시작 //숫자가 4가 될 때까지 반복 //숫자는 1씩 증가 - for 구문 반복할 조건을 초기화(let n = 2;), 조건식(n 2022. 5. 18. 문자열 - '+'연산자를 쓸 수 있음 string타입과 다른 타입 사이에 +연산자를 쓰면, string 형식으로 변환 - length : 문자열 전체 길이의 변환 - string 메소드 str.indexof(searchValue) 문자열이 있는지 리턴함 찾고자 하는 문자열이 없으면 '-1'을 return lastindexOf는 문자열 뒤에서 부터 찾음 str.split(seperator) 분리기준에 따라 문자열 자름 str.substring(start, end) 시작 index, 끝 index 시작과 끝 index사이의 문자열 str.toLowerCase() / str.toUpperCase() 소문자 만들기 / 대문자 만들기 2022. 5. 18. 이전 1 ··· 43 44 45 46 47 48 49 50 다음