본문 바로가기

분류 전체보기123

[String/Number] 문자열/숫자 변환 보통 문자열을 변화하게 되면 toString()이라는 메서드를 많이 사용하게 되는데 사용하면 다음과 같습니다. const a = 123;console.log(a.toString()) // '123' 근데 이것보다 더 간단한 방법이 있더군요.. 그건 바로... const a = String 입니다...  이게 뭔소리인가 싶어서 chatGPT에 물어봤는데 메서드 방식은 다음과 같다고 합니다. const a = String;console.log(a(123)); // '123' toString() 메서드와 동일하게 움직이기는 방식인데, 저렇게 String 이라고 선언하고 사용할 수 있다는게 신기했습니다. 반대로, Number도 마찬가지로 하면 숫자인척 하는 문자열을 숫자로 바꿔줍니다. 물론! 숫자가 아닌건 다른.. 2025. 1. 15.
[Repeat] 반복적으로 사용할때 보통 이런경우는 드물긴 하나.. 같은 값을 특정 횟수로 여러번 반복적으로 호출하는 경우에는 다음과 같은 방식으로 했었습니다.const str = 'nice';const num = 3;let result = '';for(let i = 0 ; i  근데, 내장되어 있는 함수중 repeat 메서드가 존재한다고 합니다.. 전혀 몰랐었네여... 그래서 repeat 메서드를 이용하면 다음과 같습니다. const str = 'nice';const num = 3;console.log(str.repeat(num)); 물론 같은 값을 반복할때만 사용가능한 메서드 이지만 이렇게 확연하게 코드가 줄어드네여.. 2025. 1. 15.
[JS] Promise 종류 많은 양을 처리하다보니 Promise를 자주 쓰게 되는데 Promise 메서드도 여러 종류가 있어서  한번 정리를 해야겠다 싶어서 주요 메서드만 정리를 해봅니다. 메서드설명사용 이유Promise.resolvePromise 를 즉시 fulfilled 상태로 생성1. 이미 값을 알고 있는 경우 Promise 객체로 변환2. 비동기 코드에서 값을 통일된 방식으로 처리Promise.rejectPromise 를 즉시 rejected 상태로 생성에러를 즉시 반환하고 싶을 때 사용Promise.all주어진 Promise 객체들의 배열(iterable)을 병렬로 실행하며, 모든 fulFilled 상태가 될 때까지 대기 (하나라도 reject뜨면 rejected 형태가 됨)여러 비동기 작업을 병렬로 실행하고, 모든 작업.. 2024. 11. 20.
[SPF] SPF 레코드 네이버 웍스에서 이메일 전송을 하다가 스팸으로 빠진 현상이 발견 되었습니다. 알아보니 SPF 레코드에 문제가 있어서 그런거라고 하더라구요. SPF(Sender Policy Framework)란? 일종의 메일 발송 서버 등록 제도로 해당 도메인을 통해 이메일을 보낼 수 있도록 ip주소를 지정해서 허용시키는 것입니다. 즉, 해당 ip를 허용 안시켜주면 정당한 메일로 못봐서 스팸으로 빠지는 형식인거 같습니다. SPF를 설정하게되면 제3자가 해당 도메인의 메일 주소를 사칭하여 스팸이나 피싱 메일을 보내는 것을 방지할 수 있습니다. 설정을 하기 위해서 자기 도메인의 DNS에 설정을 해야합니다. (SPF레코드는 메일 서버 IP를 회사 도메인 DNS의 TXT 레코드를 사용하며 도메인 소유자가 직접 설정해야합니다.) .. 2024. 11. 12.
[SEQUELIZE] create와 bulkCreate 현재 코드 여러곳에서 create / bulkCreate를 사용하고 있었습니다. 많은코드가 얽혀있는 상태에서 항상 특정 부분에서 문제가 생기는데 이때까지는 생각 못했지만... bulkCreate를 트랜잭션까지 연결해서 진행하다보니 시간이 계속 걸림에 따라 트랜잭션 오류가 발생했습니다. 생각을 해보니 많은 양의 데이터를 다루게 될때const arr = [];const transaction = await db.seqeulize.transaction();for(let i = 0 ; i  이런 식으로 보게되면 create는 하나하나 진행하기때문에 개별적으로 transaction을 잡고 순서대로 처리하기에 타임아웃에 덜 민감하지만, bulkCreate는 대량의 데이터를 한번에 묶어서 진행하기때문에 더 민감할 수 .. 2024. 11. 4.
[JS] 문제 있는 url 주소 찾기 토큰 검사를 하는 미드웨어를 사용하고 있는데 어는 부분에서는 정상적으로 작동하고, 다른 부분에서는 문제가 생기는 경우가 생기고 있었습니다. 너무 많은 api를 다루고 있다보니 도대체 어느 미드웨어에서 오류가 생기는지 파악이 안되고 있어서 확인이 힘들었는데 프론트에 연결하자니 시간이 걸릴꺼 같아 백단에서 처리하는 방법을 찾았습니다. 간단하지만, 전혀 신경을 안쓰고 있었는데.... 토큰이 아예 없는 경우로 넘어오는 경우 해당 valid 에 다음과 같은 값을 넣습니다. console.log(`check method: ${req.method}`);console.log(`check url: ${req.url}`); 이러면 해당 주소를 제대로 체크해서 어느 부분에서 문제 일어났는지 파악이 가능합니다. 2024. 10. 22.