JS
-
[프로그래머스/JavaScript] 조건 문자열 (Feat. eval)IT Study/프로그래머스 2023. 10. 10. 21:07
기본 코드 function solution(ineq, eq, n, m) { var answer = 0; return answer; } 최종 코드 테스트 1 〉통과 (0.06ms, 33.4MB) 테스트 2 〉통과 (0.06ms, 33.4MB) 테스트 3 〉통과 (0.05ms, 33.6MB) 테스트 4 〉통과 (0.06ms, 33.4MB) 테스트 5 〉통과 (0.06ms, 33.4MB) ... 수식이 곧 문자열이라고 생각했는데, 잘못 생각한 듯하여 혹시 "문자열을 수식으로 바꾸는 함수가 있나?" 찾아봤습니다. eval 그러나 eval은 보안, 성능 저하, 명확하지 않은 코드의 의도들로 인해 사용을 지양한다고 합니다. function solution(ineq, eq, n, m) { // 결과를 담는 answe..
-
[프로그래머스/JavaScript] 문자열 겹쳐쓰기IT Study/프로그래머스 2023. 10. 10. 20:10
처음엔 split(), substr(), substring(), slice()와 같이 문자열을 자르는 메서드를 사용해야 할 것 같았습니다. 그러나, overwrite_string의 길이만큼 문자열이 대체되는 것이 아니라 방향을 바꾸어 진행했습니다. 기본 코드 function solution(my_string, overwrite_string, s) { var answer = ''; return answer; } 최종 코드 테스트 1 〉통과 (0.05ms, 33.7MB) 테스트 2 〉통과 (0.05ms, 33.4MB) 테스트 3 〉통과 (0.05ms, 33.4MB) 테스트 4 〉통과 (0.05ms, 33.4MB) ... 앞선 문제에서 다른 사람들이 풀이할 때에 사용한 join() 메서드를 처음 사용해본 것이..
-
[프로그래머스/JavaScript] 문자열 출력하기 (Feat. 기초 트레이닝)IT Study/프로그래머스 2023. 10. 10. 17:59
초기 코드 const readline = require('readline'); const rl = readline.createInterface({ input: process.stdin, output: process.stdout }); let input = []; rl.on('line', function (line) { input = [line]; }).on('close',function(){ str = input[0]; }); 완성 코드 (기존 코드에 console.log(str);만 추가) // readline(콘솔에서 사용자 입력 읽기) 모듈 불러오기 const readline = require('readline'); // readline 모듈을 사용해 인터페이스를 생성 const rl = readl..
-
[JavaScript] null, undefined, NaN 완벽 정복IT Study/FE 2023. 10. 5. 14:57
null, undefined, NaN에 대해 완벽히 정복해 보겠습니다. (ㅋ_ㅋ) 🌟 Point null과 undefined는 값인 동시에 데이터 유형입니다. 1. undefined undefined는 초기화되지 않은 변수의 기본 값으로, 변수를 선언하고 =(등호)로 값을 할당하지 않을 경우 이 변수는 undefined가 됩니다. 또 undefined는 배열에서 생성되지 않은 인덱스로 접근하려 했을 때 뜨기도 하는데요, 아직 없는 요소에 접근하려고 했기 때문에 undefined를 반환합니다. 즉, undefined는 아무것도 없음을 나타내는 값이죠. 또 undefined는 데이터 유형이기도 하는데요, 숫자와 문자열이 데이터 유형인 것처럼 undefined 또한 데이터 유형입니다. 그러나 undefined..
-
[JavaScript] 변수 섀도잉IT Study/FE 2023. 10. 2. 13:28
이번 글에서는 자바 스크립트의 변수 섀도잉에 대해 깊게 파헤쳐보겠습니다 :) 🎨 예시 코드로 시작하기 let userName = "max"; function greetUser(name) { // 함수 내부에서의 userName이 매개변수 name으로 섀도잉 let userName = name; alert(userName); } // 전역 범위에서의 userName을 "Manu"로 변경 userName = "Manu"; // 함수 호출, 알림창에는 "Max"가 표시 greetUser("Max"); // 전역 범위의 userName을 출력, 콘솔에는 "Manu"가 출력 console.log(userName); 함수 내부에서 선언된 변수(userName)는 외부 변수(userName)와 이름이 같더라도 서로 ..
-
TypeScript 5.2의 새로운 키워드: 'using' - 자원 관리의 혁신IT Study/FE 2023. 9. 18. 09:00
안녕하세요! 오늘은 정말 흥미로운 소식을 들고 왔습니다. 함께 공부하는 친구가 갑자기 "대박"이라고 하며, 노마드 코더의 영상 링크를 공유했는데요, 그 내용은 바로 TypeScript의 새로운 키워드 'using'이 나왔다는 것입니다. 저도 이 흥미로운 키워드에 대해 더 알아보고 공유하려 합니다. 바로 시작하겠습니다! 'using' 키워드란? 'using'은 TypeScript 5.2에서 새롭게 도입할 키워드로, 'using' 키워드가 적용된 코드 블록이나 함수의 실행이 종료될 때 Symbol.dispose 또는 Symbol.asyncDispose 메서드가 있는 객체를 자동으로 해제해 줍니다. 이를 통해 코드를 깔끔하고 안전하게 만들어 주며, 자원 관리를 효율적으로 할 수 있습니다. Symbol.disp..