브라우저에서 제공하는
API
로 자바스크립트를 통해 브라우저에서 제공하는 기능들을 사용할 수 있도록 도와주는 역할을 함.
window라는 객체가 바로 브라우저의 가장 최상위 객체이며, 이 window 객체 안에 아래에서 보이는 여러가지 도구들이 들어있음.
window.alert(); // 브라우저에 메세지 다이얼고르를 띄워줌
window.prompt(); // 브라우저에 사용자의 데이터를 입력받을 수 있는 입력창을 띄움
window.confirm(); // true 혹은 false 값을 반환하는 다이얼로그를 띄움
console.log(); // 콘솔창에 로그 메세지를 보여줌
console.error(); // 콘솔창에 에러 메세지를 보여줌
console.table(); // 콘솔팡에 데이터를 테이블 형태로 제공
📍 자주 사용되지 않지만 한번 사용할 때 중요하게 사용되는것
console.group('남자그룹')
console.group('하이라이트')
console.log('윤두준')
console.log('양요섭')
console.log('이기광')
console.log('손동운')
console.groupEnd()
console.group('샤이니')
console.log('온유')
console.log('종현')
console.log('민호')
console.log('키')
console.log('태민')
console.groupEnd()
console.groupEnd()
변할 수 있는 수
,변할 수 있는 정보
라는 뜻으로
프로그램을 만들 때 필요한 숫자나 문자와 같은 데이터를 보관하는 공간이 필요한데, 이러한 공간에 들어가는 데이터가 무엇인지 이름을 붙이는 포스트잇 같은 역할을 하는 것
var
, let
, const
의 키워드 사용가능var, let -> 변수
const -> 변경 불가능한 수(상수)
블록-레벨 선언
으로 불리며, 선언된 코드 블록 밖에서 접근할 수 없으며 재정의가 불가능함초기화
필요💡 const
를 사용하는 것이 더 좋은 이유
- 의도하지 않은 값의 변경 방지
-> 코드의 예측 가능성을 높이고 버그를 줄일 수 있음- 가독성 높임
-> 다른 개발자들이 변수의 값이 변경될 가능성이 없다는 것을 빠르게 인지 가능해 가독성을 높이고 유지 보수성 향상
📍 블록 스코프 (block scope)
여러줄의 코드를 하나로 묶어주는 단위인 블록 안에서만 유효한 코드의 범위
데이터의 모양이나 형태
원시타입
: 단순한 데이터 저장객체타입 (Object Types)
: 객체로서 저장
값을 변수에 저장할 때 값 자체가 저장
-> 원시값을 다른 변수에 할달할 때 값의 참조가 저장되는 것이 아닌 값 자체가 저장됨
원시타입 종류 : string
, number
, boolean
, undefined
, symbol
, null
작은따옴표
나 큰따옴표
로 둘러싼 일련의 문자
index
라 불리는 순서가 있음 -> [ ]를 사용해 특정 순서에 위치한 글자를 가져올 수 있음length
속성을 통해 문자열의 길이를 구할 수 있음+
연산자로 연결될 수 있음 -> 연결된 순서만 동일하다면 같은 문자열로 판단indexOf() : 문자열 안에 존재하는 특정한 문자를 검색하여 문자의 인덱스를 반환
lastIndexOf() : indexOf()와 정반대의 순서로 특정한 문자를 검색
❗ 검색 순서가 바뀌었다고 인덱스 번호는 바뀌지 않음)
match() : 정규표현식을 인자로 받아 일치하는 문자열을 찾아 배열의 형태로 변환
replace() : 문자열 안에서 일치하는 첫번째 문자열을 찾고, 대체하여 새로운 문자열을 반환
slice() : 문자열의 일부분을 복사하여 샐운 문자열 반환
split() : 인자로 전달하는 구분자로 문자열을 쪼개어 각각의 값을 원소로하는 배열을 반환
toLowerCase(), toUpperCase() : 문자열을 소문자 혹은 대문자로 변환한 새로운 문자열을 생성하여 반환
trim() : 문자열 앞 뒤의 공백을 제거
padStart() : 자릿수에 맞춰 값을 채움
숫자를 처리하기 위해 고안된 자료형
Infinity
, NAN
, e
)parseInt() : 문자열을 정수로 바꿔주는 함수
toString() : 숫자를 문자열로 변환
isNaN() : 데이터를 숫자로 변환했을 때 NAN인지 아닌지 확인하기 위해 사용
toLocaleString() : 숫자를 사용자가 사용하는 언어의 표기대로 변환하여 문자열로 반환
Math 내장객체를 이용한 연산 : 자바스크립트가 기본적으로 가지고 있는 Math 객체를 이용하면 좀 더 유용한 여러 연산 가능
true
또는 false
값 중 하나를 가지며, 주로 조건문(if)의 결과값으로 사용
두 값을 비교하여 true 또는 false 값을 반환
- 논리곱(&&) 연산자 :
모든
피연산자가Truthy
일 때가장 마지막 Truthy값을 반환
하고,그 외
의 경우에는첫번째 falsy 값을 반환
- 논리합(||) 연산자 :
모든
피연산자가Falsy
일 때가장 마지막 Falsy값을 반환
하고,그 외
의 경우에는첫번째 Truthy 값을 반환
- 논리부정(!) 연산자 :
단일한 피연산자
를 가지며, 그 피연산자가Truthy이면 false
를 반환하고,Falsy이면 true
를 반환
💡 Truthy
와 Falsy
란?
Truthy : 불리언 표현식에서 true
로 평가되는 값
-> true, 0을 제외한 모든 숫자, 빈 문자열을 포함한 모든 문자열, 모든 객체: 객체, 배열, 함수 등 모든 객체
Falsy : 불리언 표현식에서 false
로 평가되는 값
-> false, 숫자 0, 빈 문자열, null, undefined, NaN
변수가 값이 할당되지 않은 경우를 가리키는 데이터 타입
값이 없음을 나타내는 데이터 타입