날짜와 시간을 저장하고 보여줄 때 날짜 객체를 사용한다.
GMT란 Greenwich Mean Time의 줄임말이며 컴퓨터 언어에서는 GMT기준으로 시간을 알려준다.
위의 사진은 GMT기준으로 6시간 빠르다는 것이고,한국은 GMT+0900 (한국 표준시) 로 표기된다.
원하는 포맷으로 날짜를 바꾸고자 할 때는 아래와 같이 Date 객체로 현재 시간을 가져온 후, 함수로 각 날짜와 시간의 값을 가져올 수 있다.
여기서 주의해야 할 점은 getMonth 함수에서는 +1 을 해줘야 한다는 것인데 그 이유는 array상에서 index no.와 숫자로 표현되는 month 가 다르기 때문인것 같다.
날짜를 밀리초 표현으로 반환한 것으로 기준일은 1970년 1월 1일이다.
이는 기준일로부터 1588325509534 초가 지났음을 의미하며 이를 이용해서 비교연산을 통해 언제가 더 과거인지 알 수 있다.
Javascript Math 객체
W3Shool 링크 참조
이와 같이 하여 랜덤한 정수를 얻는 것도 가능하다.
function getRandomArbitrary(min, max) {
return Math.random() * (max - min) + min;
}
두 값 사이의 정수 난수 생성하기
객체 선언
객체 호출
let plan1 = {
name: "Basic"
};
console.log(plan1.name);
console.log(plan1["name"]);
마침표(.)로 접근하는 것이 편할 것 같은데..
대괄호 표현은 언제 쓰는 것이 좋을까?
대괄호 안에는 변수가 들어갈 수 있다.
예를 들어 plan1 객체의 name이라는 프로퍼티에 접근하고 싶을 때,
아래와 같ㅇ ㅣ할 수 있다.
let plan1 = {
name: "Basic"
};
let propertyName = "name";
console.log(plan1[propertyName]);
-property 값 추가
중괄호{}로 감싸진 것을 block 이라 한다.
function 내부, for문, if문도 하나의 블록이다.
블록 내부에서 변수가 정의되면, 변수는 오로지 블록{}내부에서만 사용된다. 이를 지역변수라 한다.
이와 달리 block 밖인 global scope 에서 만든 변수는 global variable(전역변수)라 한다. 코드 어디서든 접근이 가능하다. 하지만 이를 남용하면 추후 수정이 어려워 지므로 유의해서 사용한다.
자바스크립트에서 조건문은 if와 switch문이 있는데 둘다 조건에 반응한다는 공통점이 있지만 형태와 쓰이는 방식이 다르다.
if 문 :
if 문 뒤에 특정 조건을 삽입하고 중괄호 안에는 그 조건이 성립하는 경우 실행되는 결과를 작성한다.
조건이 여러개일 경우는 else if 구문을 통해 처리한다.
if 조건에서 거짓인 경우, else if 조건으로 넘어가며 이는 if 밑에 무수한 else if 가 존재한다 해도 결국 하나의 결과만 실행된다는 뜻이다.
(어느 조건이 만족되면 그 결과가 출력되고 그 밑의 구문은 무시된다)
switch 문
if 문이 특정 조건에 반응했다면 switch문은 특정 값에 반응한다.
이와 같이 switch 뒤에 값이 들어가는데 case에서 그 값이 특정 값인 경우에만 실행문이 실행된다.
위의 예제에서 보듯 x = 10으로 선언되었기 때문에 10에서 반응하였으나 그 아래의 결과까지 적용되어 x=11 까지 출력되었다. 그 이유는 break 이 없기 때문이다. 이는 switch 문의 가장 큰 특징이다. 특정 조건이 맞는 경우, 그 하위 case 들 까지 모두 실행되는 것이다.
이 경우, break 를 삽입하면 원하는 결과를 얻을 수 있다.
또한, if 문에서 모든 조건이 거짓인 경우 실행되는 else 가 있었던 것처럼 switch 문에는 default 라는 것이 존재하고 다음과 같이 사용한다.