본문 바로가기

분류 전체보기

(76)
SEB_FE_ 블로깅 챌린지 _ 25일차 ( Node.js ) -> 개념 : JavaScript의 비동기 이벤트 기반 런타임. 모듈단위로 기능이 분리됨. 분리된 기능을 조립하여 사용할 수 있음. Node.js v16.14.2 Documentation 다음 링크에서 Node.js 내장모듈 목록을 찾을 수 있음. 1. require : 다른 모듈들을 불러올 수 있음. const fs = require('fs'); // 파일 시스템 모듈을 불러옵니다 const dns = require('dns'); // DNS 모듈을 불러옵니다 // 이제 fs.readFile 메서드 등을 사용할 수 있습니다! 2. 3rd-party 모듈 사용 : 빌트인 모듈이 아닌 모든 외부 모듈. npm install underscore const _ = require('unde..
SEB_FE_ 블로깅 챌린지 _ 24일차 ( 비동기 ) 동기 : 한 작업을 마무리하고 나서야 다음 작업을 수행하는 것. (다른 작업은 잠시 블로킹 됨) 백그라운드 실행이나. 서버요청 응답등 비동기로 작업해야 효율적임. JavaScript는 싱글 스레드 기반으로 동작하는 언어이지만, 런타임에서 비동기 처리를 도와줌.. (나중에 더 배움) 비동기 관련 실행 은 대표적으로 API가 있음. 1. setTimeout ( callback, millisecend ) : 일정 시간( millisecend ) 후에 함수( callback )를 실행 . 1 -1. clearTimeout ( timerId ) : setTimeout 타이머를 종료 2. setInterval( callback, milisecond) : 일정시간 (ms) 의..
SEB_FE_ 블로깅 챌린지 _ 24일차 ( 언더바 함수 ) 보호되어 있는 글입니다.
SEB_FE_ 블로깅 챌린지 _ 23일차 ( 프로토타입 체인과 상속 ) - extends , super -> 상속을 구현할 때 프로토 타입 체인을 이용함. 1. call 을 이용한 함수에서의 상속 ( with create ) // 1. 상속할 Person 함수 생성 function Person(first, last, age, gender) { this.name = { first, last }; this.age = age; this.gender = gender; }; // 1-1. Person 에 메소드 생성. Person.prototype.greeting = function() { alert('Hi! I\'m ' + this.name.first + '.'); }; // 2. call 을 이용해 상속 받기 function Student(first, last, ag..
SEB_FE_ 블로깅 챌린지 _ 22일차 ( Part 3. 프로토타입) 1. 프로토 타입 -> 개념 : 원형 객체를 의미. 어떤 객체의 부모 역할을 하는 객체로서 자식 객체에 속성을 공유. -> 모든 객체들이 메소드와 속성들을 상속받기 위한 프로토 타입 객체를 가짐. -> 프로토 타입을 상속받은 자식 객체는 부모 객체의 속성을 사용할 수 있음. -> 모든 객체는 프로토 타입 체인에 묶여있고, 최종 프로토 타입 체인의 최상위 객체는 Object.prototype임. ( 이 객체의 속성과 메서드는 모든 객체에 상속됨! ) * 프로토타입 체인 : 프로토 타입 객체도 상위 프로 타입 객체로 부터 메소드와 속성을 상속 받을 수 있음. (어떤 객체의 프로토타입 객체가 프로토 타입 객체가 있다면! 프로토타입의 객체도 누군가의 자식..!) 즉, 다른 객체에 정의된 메소..
SEB_FE_ 블로깅 챌린지 _ 22일차 ( Part 2. 객체 지향 프로그래밍 ) -> 방식 : 데이터와 기능을 class 등으로 객체로 묶어서 한번에 처리 하는 방식의 프로그래밍. 객체 지향 프로그래밍에서 역할을 크게 3가지로 나눌 수 있음. : 클래스 : 앞으로 생성할 데이터의 원본. (객체를 만들기 위한 생성자 함수를 포함함) : 인스턴스 : 클래스로 부터 가져온 데이터의 사본, 사례들. : 생성자 : 객체에 속성을 부여하는 역할. -> 주요 개념 1. 캡슐화 : 속성과 기능을 하나의 객체로 묶는 것. 객체 내의 메서드의 구현은 언제든 수정할 수 있음. (느슨한 결합) 외부에서 필요한 메서드만 노출 시키고, 내부 데이터(속성)이나 내부 구현(기능)을 숨길 수 있음. (은닉) 2. 추상화 : 내부 구현에서 불필요한 부분을 숨기고, 객체 속성 중 중요한 ..
SEB_FE_ 블로깅 챌린지 _ 22일차 ( Part 1. 클래스와 인스턴스 ) 1. 메서드 : 객체 속 함수 호출하기 : 객체.메서드() 와 같이 호출할 수 있음. 일반 변수 객체 속 함수 ( 메서드 )는 단하나의 객체만을 조작할 수 있으므로 재사용성이 떨어짐. 클로저 개념을 이용해 함수 객체 속 함수로 메서드를 만들면 변수를 선언해 계속 쓸 수 있음. -> 화살표 함수는 this에 대한 바인딩이 없고, methods로 사용 될 수 없음. 2. 클래스와 인스턴스 개념 : 하나의 모델 함수 (class) 를 만들고, 모델을 바탕으로한 객체(instances)를 만드는 프로그래밍 . -> 사용법 : 함수를 단순 호출이 아닌 new 키워드를 사용하여 만듦 -> 생성자 함수는 return 값을 만들지 않음 // 1. 함수로 클래스 정의하기 (ES5 클래스 작성 문법 ) function P..
SEB_FE_ 블로깅 챌린지 _ 21일차 ( 고차함수 ) -> 개념 : 함수를 전달인자로 받을 수 있고, 함수를 리턴할 수 있는 함수. -> 콜백함수 : 다른 함수의 전달인자로 전달되는 함수. 고차함수는 내부에서 콜백함수를 호출할 수도 있고, 조건에 따라 콜백함수의 실행 여부를 결정할 수 도 있음. -> 커링 함수 : 함수를 리턴하는 (고차) 함수 // 1. 다른 함수를 인자로 받는 경우 function double(num) { return num * 2; } function doubleNum(func, num) { return func(num); } /* 함수 doubleNum은 다른 함수를 인자로 받는 고차 함수임. * 함수 func는 함수 doubleNum의 콜백 함수임. */ let output = doubleNum(double, 4)..