-
자바스크립트 코딩테스트 주요 문법Algorithm/Grammar 2021. 6. 11. 13:29728x90
array.push() / array.pop() / array.shift()
-> 각각 맨 끝에 삽입, 맨 끝 요소 삭제, 맨 앞 요소 삭제 , pop과 shift는 삭제된 요소 return
Number.MIN_SAFE_INTEGER / Number.MAX_SAFE_INTEGER
-> 최댓값을 구할 때 : 가장 작은 값으로 초기화 해야 하므로 Number.MIN_SAFE_INTEGER
-> 최솟값을 구할 때 : 가장 큰 값으로 초기화 해야 하므로 Number.MAX_SAFE_INTEGER
배열의 원본 변경 X => slice / 원본 변경 O => splice
https://im-developer.tistory.com/103
-> array.slice(index1, index2) : index기준 숫자 1~숫자2 전 까지를 추출해서 새로운 배열 return
-> array.splice(index1, 갯수) : index1 부터 갯수만큼 원본 배열에서 삭제한다. 삭제한 요소들이 담긴 새로운 배열
return
- 문자열도 마찬가지이다. index로 접근할 수 있음. 하지만 한 글자를 선택해서 대입연산자로 바꾸는 건 안 된다.
str.split("기준문자열")
https://hianna.tistory.com/377
-> const arr = str.split(" ") : 문자열을 " " 기준으로 나누어서, 배열 형식으로 return한다.
-> 기준 문자열을 ""로 주면, 문자단위로 배열에 담긴다.
str.toString() / str.toUpperCase() / str.toLowerCase()
-> 숫자를 문자열로 변환
-> 대문자 / 소문자 변환
-> const str =str.toUpperCase();
-> 대문자 체크 시 for(let x of str) if(x === x.toUpperCase())
str.substring(index1, index2) / str.substr(index, number)
-> 문자열 파싱
-> substring은 첫 번째 index부터, 두 번째 index 인자 전까지 문자열을 모두 파싱한다.
-> substr은 첫 번째 index부터 두 번째 인자 갯수 만큼을 파싱한다.
str.indexOf('문자') / array.indexOf('요소')
-> 가장 처음으로 요소를 발견한 그 위치 인덱스값 반환
-> 발견 못할 시에는 -1 반환
-> 중복 제거에 많이 쓰인다.
array.filter((요소, index) => { })
https://developer.mozilla.org/ko/docs/Web/JavaScript/Reference/Global_Objects/Array/filter
-> 콜백 함수 첫 번째 인자로 element, 두 번째 인자로 index가 들어가고, 해당 함수가 true를 return할 경우 element
를 보존, false일 경우 버림으로써 새롭게 만들어진 배열을 return한다.
array.sort(), array.reverse()
https://hianna.tistory.com/409
-> 유니코드 순으로 요소들이 정렬된다.(오름차순)
-> 오름차순 정렬을 위해서는 인자로 콜백함수를 넘겨준다.
ex) arrray.sort((a,b)=> {a-b;}) => 오름차순을 의미
-> 또한, {1,2,10,3}의 경우 {1,10,2,3}으로 정렬이 되는데, 이것은 위의 콜백함수를 사용하면 된다.
-> 원본 배열을 변화시킨다. 따라서, 이를 해결하기 위해서는 spread 문법으로 새로운 배열 생성한다.
ex) const arr2 = [...arr1].reverse()
-> 대문자 / 소문자가 섞인 경우는 유니코드상 대문자가 앞서므로, toUpperCase() / toLowerCase()를 활용한다.
array.fill()
https://developer.mozilla.org/ko/docs/Web/JavaScript/Reference/Global_Objects/Array/fill
-> 배열을 특정 값으로 채울 때 사용한다.
-> [1,2,3,4].fill(0) // [0,0,0,0]
-> const arr = new Array(5).fill(0) // [0,0,0,0,0];
Math.max(a,b,c)
-> 여러 개의 수 중 최댓값을 구하는 함수
Array.join("")
-> 배열 요소들을 연결해서 하나의 문자열로 만드는 함수
-> 인자는 각 요소 사이에 들어갈 값을 의미
string.replace(/[^a-z]/g, '');
-> string에서 소문자가 아닌 문자를 모두 ''로 대체하는 식
-> 첫 번째 인자로 정규표현식, 두 번째 인자로 대체할 값을 적는다.
isNaN("문자")
-> 해당 문자가 숫자가 아닌지를 출력 (boolean)
-> 숫자만 출력하고자 할 때, if(!isNaN(숫자)) => true 등으로 쓰인다.
parseInt("문자열", radix)
-> 문자열을 숫자로 바꿔준다.
-> 첫 글자가 숫자(혹은 빈칸)가 아닌 경우, NaN return
-> float 숫자를 바꾸고 싶은 경우 parseFloat 메서드 사용
let sH = new Map();
-> map 자료형 객체 생성
-> sH.set(key, value) => Map에 key값과 value값을 추가한다.
-> sH.get(key) => value값을 얻는다.
-> sH.has(key) => key값이 map 내에 존재하는 지를 반환. (boolean)
-> sH.set('C', 1) / sH.set('C', sH.get('C')+1) 등으로 하나씩 늘려줌
-> 꺼내서 사용하기 위해서는 for(let [key, value] of sH]) 로 사용
'Algorithm > Grammar' 카테고리의 다른 글
C++ Container, 유용한 함수 (0) 2021.06.08