자바스크립트/Node.js
-
CLI 만들기자바스크립트/Node.js 2023. 8. 6. 20:38
{ "name": "clitest", "version": "1.0.0", "main": "cli.js", "bin":{ "CLI": "./cli.js" }, "scripts": { "start": "node ./cli.js" } } $ npm install -g package.json 파일에 “bin” : { 커맨드 : 메인파일}을 등록해주고 npm install -g로 이를 전역적으로 적용해주면 node mit.js가 아닌 mit로 해당 프로그램을 실행가능하다. 인자는 process.argv로 접근 가능하며 cli 사용여부와 상관없이 process.argv[0]은 node 주소, process.argv[1]은 파일 주소를 가리킨다. 인자는 process.argv[2]부터.
-
axios와 cheerio를 활용한 웹 크롤링자바스크립트/Node.js 2023. 7. 11. 21:35
axios - node.js에서 사용 가능한 비동기 통신 라이브러리 js가 기본으로 제공하는 fetch에 비해 기능이 다양하다. const axios = require("axios"); const url = "https://news.naver.com"; const getHtml = async () => { try { return await axios.get(url); } catch (error) { console.error(error); } }; axios를 import하고 웹크롤링할 url에 대해 get 요청을 보내면 끝 비동기 함수이므로 return await을 사용 해준다 위 함수를 실행시 url의 웹사이트의 코드가 리턴값으로 들어오며 오류 발생시 catch로 예외 처리한다 https://sulfu..
-
파일 / 디렉토리 입출력자바스크립트/Node.js 2023. 7. 11. 21:06
let fs = require('fs'); import fs from "fs"; let file = 'input.txt'; let path = './dir/a.txt'; 파일 시스템 임포트 let arr=[]; fs.readFile(file, 'utf8', function(err, data) { arr = data.split('\n'); }); 파일 읽기 여러줄로 이루어진 내용은 \n으로 스플릿 가능 let arr=[]; fs.readFile(file, 'utf8', function(err, data) { arr = data.split('\n'); }); let data = fs.readFileSync(file, 'utf8') arr = data.split('\n'); sync = 동기 = 순서 보장 r..
-
ReadLine 데이터 입출력자바스크립트/Node.js 2023. 7. 11. 01:04
const readline = require("readline"); const rl = readline.createInterface({ input: process.stdin, output: process.stdout,}); rl.on("line", (line) => { rl.close(); }); rl.on("close", () => { process.exit(); }); rl.question( '\n', (line) => { rl.close(); }); 템플릿 const readline = require("readline"); const rl = readline.createInterface({ input: process.stdin, output: process.stdout, }); readline 모듈..
-
Node.js란 무엇인가자바스크립트/Node.js 2023. 7. 10. 22:21
Node.js는 JavaScript 실행환경으로, 쉽게 말해 FE 언어 JS를 BE에서도 사용할 수 있게 해 웹 서버를 구축, 한가지 언어로 전체 웹 페이지를 만들 수 있게 해주는 도구이다. JS는 다른 언어들과 달리 웹 브라우저에 종속적인 언어이다. 그렇기에 특정 사이트에 접속하자마자 악성 파일을 다운로드 시키거나 로컬 파일을 삭제하는걸 막기위해 OS에 대한 접근이 막혀있다 Node.js는 이러한 JS에 OS 접근 기능을 제공해 프론트 언어 JS를 백엔드에서도 사용할 수 있게 해주었고, 그렇기에 Node.js는 웹 서버를 구축하는데 주로 사용된다. *서버 구축이 주 용도이지만 전부는 아님! https://engineer-mole.tistory.com/326 Node.js의 설명과 Node.js를 사용하..