정수 표현 :
Math.trunc() : 소수점을 날리고 정수만 가져온다
~~(틸트 연산자) : 소수점을 날리고 정수만 가져온다 ( 이건 내용이 복잡해서 일단은 ~~를 이렇게 사용할 수 있구나만 알자)
Math.floor() : 값을 내림으로 정수로 바꾼다 (trunc보다 floor를 많이 사용하던데 성능적인 부분이 있는건지는 모르겠다)
parseInt() : 함수는 문자열 인자를 파싱하여 특정 진수(수의 진법 체계에서 기준이 되는 값)의 정수를 반환합니다.
- 파싱 : 문자열데이터를 분석하고 분해하여 목적한 패턴에 맞게 문자열의 구조를 결정
- parseInt() 첫 번째 인수를 두 번째 인수의 진법으로 표현 두번 째 인수는 생략가능
- 일반적으로는 10진수로 나오지만 0과 대/소문자 X로 시작되는 경우 16진수로 파싱
- 따라서 그냥 이런게 있다는 것만 알고 사용은 지양한다
정수인지 확인할 때 :
Number.isInteger() : 주어진 값이 정수인지 boolean 값으로 알려준다
나머지 연산자 활용 : 어떤 수 n에 대하여 n%1 값이 0이면 정수이다
음수 양수 구분 :
0보다 크면 양수 0보다 작으면 음수 ( 양수 표현 : n>0 )
Math.sign() : 양수 +1, 음수 -1, -0은 -0, 0은 0 반환
문자열을 배열로 전환:
split() : 구분자로 문자열을 배열로 전환 -> 특정 단어 공백 ,등을 통해 단어별 배열로 만들 수 있다
Array.from() : 유사 배열을 배열로 얕은 복사
(얕은 복사 : 같은 메모리 값의 주소를 가리킨다 / 깊은 복사 : 메모리의 주소는 다르고 내용만 가져온다)
스프레드 문법 활용 : [... string] 배열 안에서 문자열을 스프레드 문법으로 풀면 한 글자씩 인덱스에 할당된다
올림표현 :
소수점의 올림이 필요할 때
Math.ceil() : 소수점을 올림해준다
for of :
배열 안에 요소를 하나씩 다른 변수에 담아서 반복한다
-> 각 요소를 이용해서 배열의 길이만큼 반복적으로 무엇인가 해야할 때
제곱근:
Math.sqrt() : 제곱근 그러니까 루트(√ )를 씌워준다
문자열 반복 :
str.repeat(count) 문자열을 주어진 횟수만큼 반복해 붙인 새로운 문자열을 반환
문자열(배열) 검색
includes() : 문자열 배열 모두 사용 가능 특정 요소를 포함하고 있는지 판별 (boolean 값 반환)
indexOf() : 지정된 요소를 찾을 수 있는 첫 번째 인덱스를 반환하고 존재하지 않으면 -1을 반환
(Of 대문자 주의)
정규표현식:
일정한 규칙(패턴)을 가진 문자열의 집합을 표현하기 위해 사용하는 형식 언어
/ 패턴 / 플래그
아직 이해하기가 힘들다
특정 패턴의 표현과 /[ab]/ => a||b로 동작된다는 것정도는 알아두자
최대공약수와 최대공배수
최대 공약수 : 유클리드 호제법이라는 공식이 있다 a%b = c라 하면 나머지가 0이 될 때까지 b%c = d ... 을 반복하는 것이다 코드로 나타내면 이렇다
const remainder = a % b; // a와 b의 나머지를 구한다
if (remainder === 0) return b; // 나머지 0인지 검사
// 나머지가 0이되면 재귀함수를 벗어날 수 있다
return gcd(b, remainder); // 재귀 함수로 반복
이때 나머지가 0이 될 때의 b 값이 최대 공약수가 된다
최대 공배수 : a* b / 최대공약수
두 배열의 비교
s1.filter(t => s2.includes(t)) : s1과 s2의 공통된 요소만을 모은 배열을 반환한다
이 글은 계속 업데이트 예정
'오늘 뭐했냐 > 자주 사용하는 것들' 카테고리의 다른 글
| 자주 쓰이는 메소드 (0) | 2023.05.26 |
|---|