본문 바로가기

NodeJs28

class 상속 const cacheManage = require('./cacheManage') class sessionManage extends cacheManage { } 2020. 1. 10.
class class cacheManage{ constructor(){ this.config = [] } addConfig(obj={}){ this.config.push(obj) } getConfig() { return this.config } } const CacheManage = new cacheManage() CacheManage.addConfig({ port: 8080 }) const config = CacheManage.getConfig() module.exports = cacheManage 2020. 1. 10.
arrow function 일반적인 함수를 arrow 로 변환 하기 const add = function add(var1,var2) { return var1+var2 } const add = (var1,var2) => var1 + var2 const add = (var1,var2) => console.log(var1 + var2) API.prototype.get = function(resource) { var self = this; return new Promise(function(resolve, reject){ http.get(self.uri + resource,function(data) { resolve(data); }); }); }; API.prototype.get = (resource)=>{ new Promise((reso.. 2020. 1. 10.
error handling const CustomError = (message) => { //객체로 오류 상태를 던지도록 한다 this.message = message this.type = 'NotImageFileException' } try { const imgTypes = ['.jpg','.png'] const fileName = 'node.doc' const isImageFile = imgTypes.find(ext => fileName.endWith(item)) if(!isImageFile){ throw new CustomError('this is not a image file') //throw new 'this is not a image file' } }catch(e){ console.log(e) } 2020. 1. 10.
event emitter //기본으로 내장된 모듈 사용 const EvenetEmitter = require('events') //해당 eventEmitter 를 확장하여 클래스를 만든다. class ChatManager extends EventEmitter { } //해당 클래스를 생성 const chatManager = new ChatManager() //선언, join 이라는 이벤트로 생성한다. chatManager.on("join",() => { console.log("new user joined") }) //join 이라는 이벤트를 호출 chatManager.emit("join") 2020. 1. 10.
setInterval //간격을 설정 한다 setInterval(() => { console.log('this is nodejs') },1000) 1초마다 반복 실행이 된다. 2020. 1. 10.