본문 바로가기

학습/JS 학습

[JS]자바스크립트 데이터

1. e 지수 표기법
ex) 1e9
1에 10^9를 곱한 값
3e-3
3에 10^3을 나눈 값

2. 16진법 0xff   ///   0xFF
8진법 0o377
2진법 0b11111111


3. 자주 사용되는 숫자형 메소드
myNumber.toFixed(소수점자리); (범위 : 0~100)
소수점 자리 밑의 숫자를 반올림한다.
범위 까지의 숫자가 없으면 0으로 채워준다.
* 문자열로 반환된 값이다.
* 다시 숫자로 만드려면 Number()함수를 사용하거나 앞에 +를 붙여준다.

myNumber.toString(진법);
해당 진법으로 바꿔준다. *문자열로 반환된 값이다.
myNumber.toString();
숫자를 문자열로 바꿔준다.

정수에서 바로 사용하는 방법
255..toString();
(255).toSting();


4. Math객체의 메소드

절댓값
Math.abs(값);
최댓값
Math.max(값1, 값2, 값3 ...);
최솟값
Math.min(값1, 값2, 값3 ...);
거듭제곱
Math.pow(값, 승);
제곱근(square root)
Math.sqrt(값);
반올림(Round)
Math.round(값);
값의 소수점 아래를 반올림하빈다.
버림과 올림(Floor and Ceil)
Math.floor(값)    ///    Math.ceil(값)
소수 아래 부분 버림 // 소수 아래 부분 올림
난수(Random)
Math.random();  // 0이상 1미만 값이 랜덤으로 반환된다.


5. 자바스크립트의 소수점 계산의 오류 바로잡기 대표적 두가지 방법
toFiexed()를 사용하거나
Math.round(sum * 10) / 10;

6.문자열 심화
myString.length 
문자열 길이
myString[index]  //// myString.charAt(index);
문자열의 글자 인덱스 접근
myString.indexOf('문자') /// lastIndexOf('문자')
해당 문자가 들어간 인덱스 탐색 /// 뒤에서 부터 탐색
myString.toUpperCase(); 대문자로 변경
myString.toLowerCase(); 소문자로 변경
myString.trim();

양 쪽에 공백이 있을경우 공백을 없애준다.
myString.slice(시작,끝); 
시작인덱스부터 끝-1인덱스까지 문자열을 반환
myString.slice(시작); 
시작인덱스부터 마지막까지 문자열을 반환
myString.slice()
문자열 전체를 반환한다.


7. 문자열과 배열의 비슷한 점과 차이점
비슷한 점
인덱스로 접근이 가능하고 of를 사용할 수 있다.

차이점
문자열은 String이고 배열은 Object이다.
같은 값을 가지고 있어도 동등 일치 == === 비교를 하면 전부 false가 나온다.
배열은 mutable(바뀔 수 있는)  문자열은 immutable(바뀔 수 없는) 속성을 가진다.
배열은 인덱스접근으로 값을 바꿀 수 있지만, 문자열은 각 인덱스를 수정하지 못한다.

 


8. 자료형 /// 기본형과 참조형
기본형
숫자형, 문자형, 불린형, null, undefined

참조형 복사하기
배열
arr2 = arr1.slice();

객체 복사하기
obj2 = Object.assign({}, obj2);
또는
obj2 ={};
for (let key in obj1){
  obj2[key] = obj1[key];
}
위 fot문은 함수로 만들어서 사용할 수 있다.

객체나 배열 안에 객체,배열이 있다면 복사할 경우 깊은 복사를 고려해야한다.


9. const
const는 값의 재할당이 되지 않는다.
상수를 만들 때 사용하기도 하지만,
기능이 작동할 때 변하지 않아야 할 변수들을 정의할 때 사용한다.
진짜 상수와 구분할 때는 상수 이름은 대문자의 스네이크케이스를 적용한다.

객체나 배열의 경우에는 const로 선언해도 변수의 주소값이 바뀌는 것이 아니라 프로퍼티나 요소가 변경될 수 있다.

'학습 > JS 학습' 카테고리의 다른 글

[JS] DOM 관련  (0) 2023.11.07
[JS]Html문서의 태그 선택하기  (0) 2023.11.06
[JS]배열 간단 요약  (0) 2023.10.31
[JS]객체 간단 요약  (0) 2023.10.31
[JS]JS 학습 기본 - 1  (1) 2023.10.30