node.js

기타

[Shebang] Shebang(#!)이란?

개발자라면 한번쯤 파일 최상단에 #!로 시작하는 "#! /bin/bash" 또는 "#!/usr/bin/env node" 이런 형식의 문자열을 본적이 있을것이다. 이 글에서는 프로그래밍 스크립트에서 자주 볼 수 있는 ‘Shebang’이라는 특수한 기호에 대해 알아보자. Shebang이란? Shebang은 스크립트의 가장 윗부분에 위치하는 #!로 시작하는 라인을 말한다. 주로 Unix와 유사한 운영체제에서 사용되며, 이 라인은 스크립트를 실행할 때 어떤 인터프리터를 사용할 것인지 시스템에게 알려준다. 예시 #!/bin/bash echo "Hello, World!" 위 스크립트에서 #!/bin/bash는 이 스크립트를 bash 쉘로 실행하라는 것을 나타낸다. #!/usr/bin/env node console...

Programming/Node.js

[Node.js] 자주 발생하는 TypeError 해결하기: 'Cannot read property of undefined'

Node.js를 이용한 개발이 점점 인기를 얻고 있다. 그러나 개발 과정에서 발생할 수 있는 다양한 오류들로 인해, 개발자들이 진행에 어려움을 겪을 때가 많다. 이번 글에서는 Node.js 개발 중 자주 마주치는 오류 중 하나인 "TypeError: Cannot read property 'x' of undefined"에 대해 알아보자. "TypeError: Cannot read property 'x' of undefined" 오류는 객체가 정의되지 않았을 때 발생한다. 객체의 속성이나 메서드에 접근하려고 시도하면 이 오류가 발생한다. 이러한 오류의 일반적인 원인들은 다음과 같다. 1. 변수 또는 객체 초기화 누락 가장 일반적인 원인은 변수 또는 객체를 선언했지만 초기화하지 않은 경우 이 경우 해당 변수는..

Programming/Node.js

[Node.js] NPM에서 NODE_ENV와 DevDependencies 이해하기

Node.js는 현대 웹 개발의 필수적인 부분이 되어, 개발 과정을 간소화하는 다양한 패키지와 모듈의 강력한 생태계를 제공하게 되었다. 많은 기능 중 Node.js는 애플리케이션의 동작 방식에 영향을 미치는 다양한 환경 설정을 제공하고 있다. 그 중 하나는 NODE_ENV 변수다. 이 글에서는 NODE_ENV 변수가 종속성 관리에 어떤 역할을 하는지 그리고 package.json 파일의 devDependencies 필드의 설치 프로세스에 어떻게 영향을 주는지 살펴보고자 한다. NODE_ENV 개요 NODE_ENV 변수는 Node.js 애플리케이션의 동작을 제어하기 위해 설정할 수 있는 환경 변수다. 일반적으로 'development', 'production', 'test'의 세 가지 가능한 값이 있다. ..

Programming/Node.js

[Mocha] DB 접근 최소화를 위한 Mocha 테스트 코드 작성법

Mocha를 사용하여 테스트 코드를 작성하다 보면, 각 테스트 파일에서 데이터베이스(DB)에 연결하고 연결을 끊어야 하는 상황이 발생한다. 이러한 경우, 테스트 파일의 수보다 많은 DB 접근과 연결 끊기 작업이 발생할 수 있다. 이 문제를 해결하기 위해 Mocha를 사용하여 테스트 코드를 작성할 때 모든 테스트 전에 DB에 단 한 번 연결하고 모든 테스트 후에 단 한 번 연결을 끊는 방법을 소개한다. 이 예시는 mongoose와 mocha를 사용한다. Version Node.js: v16.15.1 npm: 9.6.4 mocha: 9.1.2 mongoose: 6.6.2 typescript: 4.9.3 기존 테스트 코드의 구조 및 코드 기존 테스트 폴더의 구조 test/ test1/ test파일들... te..

얼은펭귄
'node.js' 태그의 글 목록