⚙️ Node.js

개요 최근에 NodeJS를 통해 엑셀파일을 불러와 새로운 엑셀로 생성하려고 하다 문제가 생겼다. 엑셀을 출력할 때 스타일, 차트, 함수 등이 전부 깨지는 현상이 발생한 것이다. 확인을 해보니 내가 사용하던 xlsx 라이브러리는 엑셀 저장을 할 때 기존에 불러온  엑셀을 그대로 저장하는 게 아닌 새로운 엑셀파일로 저장하는 것이 문제였다. 아무리 찾아봐도 차트를 유지해 주는 기능을 찾지 못했다. 그렇게 삽질을 이어가던 중 xlsx-populate라는 라이브러리를 발견했다. https://www.npmjs.com/package/xlsx-populate xlsx-populateExcel XLSX parser/generator written in JavaScript with Node.js and browser s..
Typescript 설치현재 PC에 타입스크립트를 설치한다. npm i -g typescript pakage.json 파일 생성npm init -y필요한 구성 요소 설치npm i -D tsx @types/node express @types/express ts-node nodemon tsconfig.json 파일 생성TypeScript로 짜여진 코드를 JavaScript로 컴파일하는 옵션을 설정하는 파일npx tsc --init필요한 옵션 작성{ "compilerOptions": { "target": "ES2022", //ES2022 문법 적용 "module": "commonjs", //어떤 모듈 방식으로 컴파일할지 설정 "outDir": "./dist", //컴파일 후 js 파일들이 생..
개요2년 전부터 재미로 만들어서 여러 서버에 잘 사용하고 있는 봇이 있다.그 봇은 나의 NodeJS 기술력을 융합하여 만들어낸 특별한 프로그램이다.먼지 쌓인 서버 안에서도 24시간 2년 내내 열일하고 있는 봇의 모습을 보며, 나 혼자만 갖고 있긴 아쉬운 녀석이라고 생각했다.따라서 오늘부터 천천히 디스코드봇 개발에 관심 있는 자들을 위한 튜토리얼을 시작하고자 한다.게시글 제목을 10분 만에 제작한다고는 했지만, PC사양이나 환경에 따라서 실제로는 5분 또는 20분이 걸릴 수 있다. 구성진행하기 앞서, 내가 사용한 Tool을 미리 열거해 두도록 하겠다. Windows10NodeJSDiscordJSJavascriptVisualStudio Code 진행1. 툴 설명특별히 복잡한 툴을 사용하지 않는다.간단히 내가..
1. try-catch 블록 사용하기비동기 함수에서 오류가 발생할 가능성이 있는 코드를 try-catch로 감싸면, 오류가 나도 앱이 죽지 않고 오류를 처리할 수 있다.import { Injectable } from '@nestjs/common';@Injectable()export class ExampleService { async someAsyncFunction() { try { // 비동기 작업 수행 const result = await this.someOtherAsyncFunction(); return result; } catch (error) { // 오류 발생 시 처리 console.error('오류 발생:', error); //..
ID : 2401281723 Tag : #javascript C언어에서 포인터를 얼마나 제대로 이해하느냐에 따라 고급 C 개발자로 발전 할 수 있듯이 자바스크립트에서도 포인터만큼 중요한 개념이 바로 함수다. 자바스크립트의 함수는 모듈화 처리나 클로저, 객체 생성 등 자바스크립트의 근간이 되는 많은 기능을 제공하고 있다. 함수 정의 자바스크립트에서 함수를 생성하는 방법은 3가지가 있다. 3가지 방법 모두 같은 모양의 함수를 생성하지만, 각각의 방식에 따라 함수 동작에 조금씩 차이가 생긴다. 함수 선언문 (function statment) 함수 표현식 (function expression) Function() 생성자 함수 이번 포스팅에서는 두 개의 인자를 받아 그 합을 구하는 add() 함수를 3가지 방법으..
ID : 2401271952 Tag : #javascript 배열 자바스크립트에서의 배열은 다른 프로그래밍 언어와는 다르게 조금 특별한 형태이다. 가장 먼저 보이는 차이점은 다른 객체지향 언어인 C#이나 자바에서는 자료형과 크기를 먼저 지정한 후 배열을 사용해야 하는데 자바스크립트에서는 굳이 크기를 지정하지 않고 어떤 위치에서나 어느 타입의 데이터를 크기 지정없이 생성을 할 수 있다. 1. 배열 리터럴 객체 리터럴처럼 배열도 특정 리터럴을 통해 배열을 생성 할 수 있다. 객체 리터럴의 경우 중괄호 ‘ { } ’ 를 이용한 표기법이 있지만, 배열의 리터럴의 경우에는 대괄호 ‘ [ ] ’ 를 사용한다. 따라서 객체가 프로퍼트의 이름 을 통해 해당 프로퍼티에 접근을 한다면, 배열은 배 열 내 위치 인덱스 값을..
Dogfoot_JW
'⚙️ Node.js' 카테고리의 글 목록