str.substr(start\[, length]): 특정 위치에서 시작하여 특정 문자 수만큼의 문자들을 반환(원본 불변)str.substring(indexStart\[, indexEnd]): 시작 인덱스부터 종료 인덱스 전까지 문자열의 부분 문자열을 반환(원본 불변
1.제곱하는 법 2.숫자 마지막 자리 구하기 10으로 나눈 나머지 3.falsy(6가지) false/null/undefined/0/NaN/'빈 문자열' 4.내림, 올림, 반올림 5.최솟값, 최대값 찾기 1) 기본 Math.min() Math.max() 2) 배
1.reduce 주의1. 가장 긴 문자열을 구할 경우 -> 가장 긴 문자열을 담는 변수를 따로 만들지 않아도 됨 주의2. 필터링이 필요한 경우 -> reduce 밖에서 filter 사용 or reduce 안에서 조건문 사용 주의3.하나라도 조건에 맞지 않으면 fal
1.for문 안에 return 두지 말기 한 턴만 돌고 끝남 NaN === NaN -> false !NaN -> true Numbur(' ') -> 0 Numbur('a') -> NaN 3.문자열만 돌아가는 것이라면 배열로 안만들고 문자열로 만들어도 됨 4.정렬
1.Memoization -정의 동일한 계산을 반복해야 할 때, 이전에 계산한 값을 메모리에 저장함으로써 동일한 계산의 반복 수행을 제거하여 프로그램 실행 속도를 빠르게 하는 기술(동적 계획법의 핵심이 되는 기술) 2.약수, 소수 약수: 어떤 수를 나누어떨어지게 하는
1.indexOf(), lastIndexOf() vs. findIndex(), find() 1) indexOf(), lastIndexOf() => 문자열, 배열 -indexOf(찾으려는 문자열/요소[, 탐색을 시작 인덱스]): 탐색을 시작할 인덱스부터 탐색하여 최초로
1.시간복잡도 참고 영상 이론: https://youtu.be/6Iq5iMCVsXA 문제 풀이: https://youtu.be/QBZnXPdj4 참고 사이트 https://itprogramming119.tistory.com/entry/Javascript-%EC%8B
1.pop, shift 활용 배열에서 맨 앞/ 맨 뒤 요소를 삭제해야 하고, 삭제한 요소의 값이 필요할 경우 2.new Array() 3.Array.prototype.fill() 4.약수의 개수 1) 약수의 개수 구하기 자연수를 소인수분해하였을 때, 각 소인수의
1.Optional chaining(?.) . 체이닝 연산자와 유사하게 작동하지만, 만약 참조가 nullish(null/undefined)이라면, 에러가 발생하는 것 대신에 undefined 리턴 2.!! 활용 활용1. 매트릭스의 값 유무를 확인하고 싶은 경우 값이
1.문자열 밀기(프로그래머스) Q. 문자열 "hello"에서 각 문자를 오른쪽으로 한 칸씩 밀고 마지막 문자는 맨 앞으로 이동시키면 "ohell"이 됩니다. 이것을 문자열을 민다고 정의한다면 문자열 A와 B가 매개변수로 주어질 때, A를 밀어서 B가 될 수 있다면 밀어