Javascript 35
Script/Javascript 분류의 글을 최신순으로 모았어요.
Error: listen EADDRINUSE: address already in use :::3000 해결, 3000번 포트 잡고 있는 프로세스 찾아서 끄는 법 (Node 26)
이 오류는 3000번 포트를 이미 다른 프로세스가 쓰고 있어서 새 서버가 자리를 못 잡았다는 뜻이에요. lsof -nP -iTCP:3000 -sTCP:LISTEN 으로 그 프로세스의 PID를 찾아 kill 하면 바로 풀려요.대부분은 예전에 띄운 서버가 아직 살아 있는 경우예요. 특히 터미널에서 Ctrl+C 대신 Ctrl+Z를 누르면 서버가 멈춘 채로 포트를 계속 쥐고 있어서 같은 오류가 나요. 이 경우도 직접 재현해 봤어요.테스트 환경: macOS 26.6.2, Node.js v26.5.0오류가 나는 순간을 그대로 재현해 봤어요아래처럼 3000번 포트로 뜨는 아주 짧은 서버 파일을 만들었어요.const http = require('http');const server = http.createServer((..

자바스크립트 깊은 복사, structuredClone vs JSON.parse(JSON.stringify) vs 스프레드 비교 (Node 26 실행 결과)
자바스크립트에서 객체를 통째로 복사하려면 Date, Map, Set이 들어 있을 때는 structuredClone, 숫자와 문자열만 있는 단순한 데이터면 JSON.parse(JSON.stringify())를 쓰면 됩니다. 스프레드 문법({ ...obj })은 바깥 한 겹만 복사하는 얕은 복사라서 안쪽 객체를 고치면 원본까지 바뀌어요.말로만 들으면 헷갈려서 같은 객체 하나를 세 방법으로 복사해 보고, 무엇이 남고 무엇이 사라지는지 직접 돌려 봤습니다.테스트 환경: macOS 26.6.2, Node.js v26.5.0한눈에 비교확인한 것스프레드 { ...obj }JSON.parse(JSON.stringify())structuredClone()안쪽 객체까지 복사안 됨(원본도 바뀜)됨됨Date그대로(같은 객체 ..

SyntaxError: Cannot use import statement outside a module 해결, Node 26에서 4가지 경우를 직접 돌려 봤어요
이 오류는 import 문법(ES 모듈)을 쓴 파일을 Node.js나 브라우저가 CommonJS나 일반 스크립트로 읽을 때 납니다. Node.js라면 package.json에 "type": "module"을 넣거나 파일 확장자를 .mjs로 바꾸면 되고, 브라우저라면 script 태그에 type="module"을 붙이면 됩니다.그런데 요즘 Node.js는 package.json이 없으면 이 오류가 아예 안 나기도 해요. 그래서 "어떤 경우에 나고 어떤 경우에 안 나는지"를 같은 코드로 직접 실험해 봤습니다.테스트 환경: macOS 26.6.2, Node.js v26.5.0, Chrome 153실험에 쓴 코드는 두 줄짜리예요파일 내용은 모든 경우에 똑같이 아래 두 줄입니다. 바뀌는 건 파일 확장자와 pack..

javascript 문자열이 유효한지 체크하는 함수 ( validation )
상황에 따라 내가 원하는 유효한 문자열 이 포함 여부에 되었는지 체크하는 함수를 만들어 보려고 합니다. 유효체크 문자를 인자값으로 받아 여러가지 상황에서 범용적으로 사용을 할수 있도록 처리하도록 해보겠습니다 원하는 유효한 문자열로 값을 체크 아래를 통해서 자세히 알아보시기 바랍니다. function checkValidString(checkString, invalidString) { if (!checkString) return -2; // checkString이 null이거나 빈 문자열인 경우 -2를 반환 const invalidChars = new Set([...invalidString]); // 중복을 허용하지 않는 Set으로 invalidString의 문자를 저장 for (let i = 0; i < ..

- Javascript
Javascript replace 역참조 치환 예제
정규표현식 역참조 치환 간단한 예제 정규표현식 역참조 개념 역참조는 앞에서 일치 했던 하위표현식을 다시 참조한다는 의미이다. 하나의 정규표현식에는 여러개의 하위표현식이 존재하고 각 하위 표현식은 차례대로 저장된다. 역참조는 이를 다시 참조하는 방식으로 쓸수 있다. Javascript replace 역참조 치환 예제 역참조 문법은 정규표현식의 엔진에 따라 표현방식이 많이 다르다. 자바스크립트에서 역참조를 사용 치환 예제를 살펴보자. 하위표현식을 사용하지 않은케이스(reg1)와 하위표현식을 사용한 케이스(reg2)에 따라 어떤식으로 키워드를 사용하여 역참조 치환을 하는지 알아보자. 역참조를 사용하면 원문의 특정 패턴을 찾아 string + 패턴 + string 으로 치환이 가능하다. 또는 특정 패턴을 추출해..
- Javascript
javascript 현재날짜 기준 과거 미래 체크
javascript 현재날짜 기준 과거 미래 체크 1. 예) 현재시간을 기준으로 "2023년2월2일 13시30분"은 과거인지 체크 function isPast(time) { var year = time.substr(0,4); var month = time.substr(4,2) - 1; // 1월=0,12월=11 var day = time.substr(6,2); var hour = time.substr(8,2); var min = time.substr(10,2); var sec = time.substr(12,2); var paramDate = new Date(year,month,day, hour, min, sec); var today = new Date(); var currentYear = today.ge..