목록전체 글 (106)
개발스토리
fs 모듈은 파일 시스템에 접근하는 모듈이다. 즉, 파일을 생성하거나 삭제하고, 읽거나 쓸 수 있다. 폴더도 만들거나 지울 수 있다. //readme.txt 안녕하세용 //readFile.js const fs = require('fs'); fs.readFile('./readme.txt',(err,data)=>{ if(err){ throw err; } console.log(data.toString()); //안녕하세용 }) fs 모듈을 불러온 뒤 읽을 파일의 경로를 지정한다. 파일의 경로는 node 명령어를 실행하는 콘솔 기준이라는 점에 유의하자. fs는 기본적으로 콜백 형식의 모듈이므로 실무에서 사용하기 불편하다. 따라서 fs 모듈을 프로미스 형식으로 바꿔주는 방법을 사용한다. // readFilePro..
노드 내장 객체 따로 설치하지 않아도 바로 사용 가능하며, 브라우저의 window 객체와 비슷하다. 노드 프로그래밍을 할 때 많이 쓰이는 내장 객체를 알아보자. global 전역 객체이므로 모든 파일에서 접근할 수 있다. 생략이 가능하다. 이전 내용에서 사용했던 require 함수도 global.require에서 global이 생략된 것이다. global 객체 내부에는 매우 많은 속성이 들어 있으며, 이를 보려면 REPL을 이용해야 한다. ! 노드에 DOM, BOM이 없으므로 window와 document 객체는 사용할 수 없다. 전역 객체라는 점을 이용해 파일 간에 간단한 데이터를 공유하기도 한다. //globalA.js module.exports = () => global.message; //glob..
REPL 사용하기 자바스크립트는 스크립트 언어이므로 미리 컴파일을 하지 않아도 즉석에서 코드를 실행할 수 있다. 입력한 코드를 읽고(Read), 해석하고(Eval), 결과물을 반환하고(Print), 종료할 때까지 반복한다(Loop)고 해서 REPL이라고 부른다. VS Code에서 터미널을 키자. $ node //콘솔에서 REPL로 들어가는 명령어 > const str = 'hello'; > undefined > console.log(str); hello undefined > 위와 같이 출력되면 성공이다. 입력한 코드를 REPL이 읽고 해석한 뒤 바로 결과물을 출력했다. 그리고 종료되기 전까지 입력을 기다린다. 종료하려면 CTRL + C를 두번 누르면 된다. REPL은 한두 줄 짜리 코드를 테스트해보는 용..
AJAX AJAX는 비동기적 웹 서비스를 개발할 때 사용하는 기법이다. 쉽게 말해 페이지 이동 없이 서버에 요청을 보내고 응답을 받는 기술이다. 보통 AJAX 요청은 jQuery나 axios 같은 라이브러리를 이용해서 보낸다. 프론트엔드에서 사용하려면 HTML 파일을 하나 만들고 그 안에 script 태그를 추가해야 한다. 두 번째 태그 안에 앞으로 나오는 프론트엔드 예제 코드를 넣으면 된다. 먼저 요청의 한 종류인 GET요청을 보내보자. axios.get함수의 인수로 요청을 보낼 주소를 넣으면 된다. axios.get('https://www.yeah.com/api/get') .then((result)=>{ console.log(result); console.log(result.data); // {} }..
클래스 클래스 문법도 추가되었다. 하지만 다른 언어처럼 클래스 기반으로 동작하는 것이 아니라 여전히 프로토타입 기반으로 동작한다. 프로토타입 기반 문법을 보기 좋게 클래스로 바꾼 것이라고 이해하면 된다. 다음은 프로토타입 상속 예제 코드이다. var Human = function(type){ this.type = type || 'human'; }; Human.isHuman = function(human){ return human is instanceof Human; } Human.prototype.breathe = function(){ alert('h-a-a-a-m'); }; var Zero = function(type, firstName, lastName){ Human.apply(this, argume..