javascript7 [Node.js] Node에서 replaceAll 사용하기 MDN에 따르면 node.js version 15.0.0부터 replaceAll 메서드가 지원된다고 써있다. 하지만 나는 노드 버전이 18.16.0임에도 불구하고 replaceAll을 사용할 수 없었다. 그래서 replace + 정규식 조합을 쓰기로 했다.// 예시) 문자열 '-'를 문자열 '.'로 바꾸기const originalTxt = 'Hello-World-Text';const changedTxt = originalTxt.replace(/-/g, '.');console.log(changedTxt); // 'Hello.World.Text'; MDN: https://developer.mozilla.org/ko/docs/Web/JavaScript/Reference/Global_Objects/Strin.. 2024. 8. 22. [Node.js] PM2로 프로젝트 구동 시 개발/상용 환경 나누기 1. pm2 config 파일 구성// ecopm2.config.jsmodule.exports = { apps: [ { // development name: 'development-name', script: './node_modules/.bin/ts-node', args: './bin/www', // watch: true env: { NODE_ENV: 'development', }, }, { // production name: 'production-name', script: './build/bin/www.js', env: { NODE_ENV: 'production'.. 2024. 7. 18. [JS] split 함수 빈칸 제거 안됨 해결:: non breaking space split 함수를 써서 빈칸을 기준으로 문장을 나누려고 했다.그런데 문장 일부는 빈칸 기준으로 나뉘어지고, 다른 일부는 빈칸 기준으로 나누어지지 않는 현상을 발견했다.아래 이미지에서 두 케이스의 다른 점이 보이는가?첫 번째 줄은 정상적으로 빈칸을 기준으로 문장이 나뉘어진 것을 확인할 수 있는데, 두 번째 줄은 결과 어레이의 첫 번째 값을 보면 'an apple'이 나뉘어지지 않은 것을 확인할 수 있다. 두 케이스의 차이점은 문장에 'non breaking space'를 썼다는 것이다.non breaking space는 윈도우: alt+space, 맥: option+space 를 사용했을 때 만들어지는 공백이다.또는 html에서 를 썼을 때 만들어지는 공백이다.흔히 스페이스바만을 눌러서 생성되는.. 2024. 6. 28. [Typescript] Specified 'include' paths were '["**/*"]' and 'exclude' paths were '["./build"]'.ts 에러 tsconfig.json에서 Specified 'include' paths were '["**/*"]' and 'exclude' paths were '["./build"]'.ts 에러 메시지가 나타났다.에러 메시지에 명시된 것과 같이 tsconfig.json 파일에서 include와 exclude 경로를 지정해주면 된다. 나는 node 프로젝트를 진행중이라 node_modules도 exclude에 함께 명시해주었다.{ "compilerOptions": { // ... }, "include": ["**/*"], "exclude": ["./build", "node_modules"]} VSCode 사용 시에 Cmd/Ctrl + Shift + P 누른 후에 Typescript: Restart TS.. 2024. 6. 12. [Node.js] nodemon 설치하고 typescript 적용하기 1. nodemon 설치코드를 변경하고 저장했을 때 변경 사항이 바로 적용되도록 하기 위해서 nodemon을 사용한다.개발 시에만 사용할거니까 -save-dev 옵션을 줘서 설치한다.// 패키지 설치npm install -save-dev nodemon 2. typescript 관련 패키지 설치express로 프로젝트를 구동해서 express 관련 패키지도 설치해줬다.npm install --save-dev typescript ts-node @types/node @types/cookie-parser @types/debug@types/express @types/http-errors @types/morgants-node: node.js 프로젝트 구동 시에 ts 파일을 수동으로 컴파일하지 않고 바로 실행시킬 수.. 2024. 6. 12. [JavaScript] 숫자 3자리마다 콤마 넣기 숫자 3자리마다 콤마를 넣고 싶다면 toLocaleString() 메서드를 사용하면 된다.활용 예시: const num = 123456789;const commaNum = num.toLocaleString('ko-KR');console.log(commaNum); // 123,456,789 참고: https://developer.mozilla.org/ko/docs/Web/JavaScript/Reference/Global_Objects/Date/toLocaleString 2024. 5. 17. new Date() timezone 적용하기 JS에서 new Date()를 이용해서 현재 시각을 콘솔에 찍어보면, toLocaleString을 적용했을 때와 9시간 차이가 나는 것을 확인할 수 있다. 이것은 한국 시간이 UTC보다 9시간 빠른 시간대이기 때문이다. const now = new Date(); console.log(now.toLocaleString()); // 4/10/2024, 8:57:11 PM => 현재 한국 시간 console.log(now); // 2024-04-10T11:57:11.268Z => ISO 8601 JS new Date()는 getTimezoneOffset이라는 함수를 지원하는데, 이것은 현재 타임존 offset을 분 단위로 제공한다. 한국의 경우 -540분을 해야 UTC와 같은 시간이 되기 때문에 getTime.. 2024. 4. 10. 이전 1 다음 반응형