자바스크립트의 내장 객체

김종현·2023년 3월 17일
0

Js

목록 보기
6/12

globalThis

-전역 객체를 지칭하는 변수
-전역 객체는 환경에 따라 다르다
-브라우저 환경은 window, node 환경은 global 객체를 지칭.
-globalThis는 환경벌 차이를 통일하여 하나의 변수로 서로 다른 전역 객체를 가리키게 한다.

window

-DOM doucment를 포함하는 창을 나타내는 객체
-전역 스코프에 선언된 변수는 모두 window의 proerty가 된다

  • window.innerHeight
  • window.innerWidth
    -현재 창의 정보를 얻거나 창을 조작한다.

-globalThis는 브라우저 환경에서 window 객체와 같다.

Document


-브라우저에 로드된 웹페이지
-문서의 title, URL 등의 정보를 얻는다
-element 생성, 검색 등의 기능 제공

-createElement, createTextNode는 동적으로 원소를 생성한다
-이를 이용해 Js 만으로도 원소를 구성할 수 있다.

<ul>
	<li>
		"밥 먹기"
	</li>
</ul>

Number, NaN

-Js의 number 원시타입을 감싸는 객체.

  • Number(10), NaN(10)
    -유의미한 상수값, 숫자를 변환하는 메서드 등을 제공
    -NaN : not a number를 나타내는 객체
    -isNan() : 전역 함수로, 입력값을 숫자로 변환했을 때 NaN이 되는지를 검사.

-Number.toFixed 메서드는 숫자의 소숫점 자릿수를 제어, 반환된 값은 반올림된 문자열.
-changeToSud에서 변환된 krw를 소숫점 둘째자리까지만 처리.

-isNaN과 함께 활용하여 유저의 입력을 포맷팅할 수 있다.
-formatNumber는 isNaN함수로 빈 문자열, 잘못된 입력 등의 경우를 처리한다.

  • NaN이 true일 경우 '0'을 반환, 그렇지 않으면 소수 둘째자리까지 반환.

Math

-기본적인 수학 연산 메서드, 상수를 다루는 객체
-BigInt 타입(ex: 9007199254740991n처럼 숫자에 n이 붙음)과 호환되지 않고, Number 타입만을 인자로 다룬다


-Math.max/min : '개별 숫자를 인자로 받아' 최대, 최솟값 리턴
-이 함수는 배열의 최댓값, 최솟값의 차이를 계산

-Math.random() : 0~ 사이의 float number를 구한다.
-Math.floor() : 소숫점 이하 숫자 버림
-이 함수는 min(50) ~ max(100) 범위의 랜덤 숫자를 구한다.


Date

-'특정 시점'의 날짜를 표시하기 위한 객체.
-날짜와 관련된 작업을 위한 메서드 포함

-Date.getDay() : 요일을 0(일요일) ~ 6(토요일)로 구한다.
-getMonth(), getDate(), getHour() 처럼 년/월/일/시/분/초/밀리초 등을 구할 수 있다.

-setDate()와 같은 메서드로 시간을 설정한다
-설정 시 월 변경 등의 시간 변환은 Date 객체가 처리한다

  • addDays(new Date("2021/9/22"), 100) : 2021년 9월 22일에 100일을 더하면 2021년 12월 31일 금요일이 나옴
    -toDateString() : 특정 포맷으로 문자열을 반환한다. "Fri Dec 31 2021"


-getTime() 메서드는 시간을 밀리초 단위로 반환

  • 이 밀리초는 1970.1.1 시점부터 흐른 시간
    -fromNow는 주어진 시간이 현재로부터 며칠이나 흘렀는지를 계산
    -위 코드는 두 날짜의 차이를 밀리초로 계산한 뒤 dayTime(하루를 밀리초로 환산)로 그 값을 나눈뒤 버림을 통해 며칠전이었는지 계산.

String, JASON

-String : Js의 문자열 원시 타입의 래퍼 객체
-문자열을 조작하기 위한 여러 메서드 포함
-JSON : JSON 객체와 관련된 메서드를 담은 객체


-trim(), toUpperCase()등은 변한된 새로운 문자열을 리턴
-includes() : 문자열 검색에 성공시 true/false 리턴
-toUserList() : 이름의 배열을 받아 리스트 태그 목록의 문자열을 계산
-위 코드는 user 중 admin이 있으면 제외하고 map과 trim을 이용 각 문자열의 공백을 제거한 뒤 대문자로 변환하여 각 문자열을 li로 감싸서 하나의 문자열로 만든다.


-replace() : 주어진 문자열을 검색하여 타겟 문자열로 하나 변환하여 새로운 문자열을 반환.(원본 훼손x)

  • replaceAll() : 주어진 문자열을 검색하여 타겟 문자열로 모두 변환하여 새로운 문자열을 반환.
    -indexOf() : 특정 문자열을 검색하여 시작점의 인덱스를 반환, 없을시 -1을


-JSON.stringify() : 주어진 객체를 JSON 문자열로 변환(객체 형태)
-JSON.parse() : 주어진 JSON 문자열을 Js에 맞는 결과 객체로 변환

profile
나는 나의 섬이다.

0개의 댓글