1.Math 내장 객체
Math 객체는 수학에서 자주 사용하는 상수와 함수들을 미리 구현해 놓은 자바스크립트 표준 내장 객체이다.
// 두 수 중에서 최대값
let max = Math.max(100, 123);
document.write('<h1>최대값 : ' + max + '<h1>');
// 두 수 중에서 최소값
let min = Math.min(100, 123);
document.write('<h1>최소값 : ' + min + '<h1>');
// 원주율
document.write('<h1>원주율 : ' + Math.PI + '</h1>');
// 소수점 반올림
let num1 = 3.7146;
document.write('<h1>소수점 반올림 : ' + Math.round(num1) + '</h1>');
// 절대값
let num2 = -123;
document.write('<h1>절대값 : ' + Math.abs(num2) + '</h1>');
// 난수발생(랜덤)
document.write('<h1>랜덤 : ' + Math.random() + '</h1>');
// 두 수 사이의 수를 리턴하는 함수
function random(n1, n2){
return parseInt(Math.random() * (n2 - n1 + 1)) + n1;
}
// 함수 결과
let num = random(0,9);
document.write("<h1>0~9 사이의 난수 : " + num + '</h1>');
// 응용
let auth = " ";
for(let i = 0; i<5; i++){
auth += random(0, 9);
}
document.write("<h1>인증번호 : " + auth + '</h1>');
[출력 결과]

▶ Math 내장 객체 조금 더 자세한 내용...
http://www.tcpschool.com/javascript/js_standard_math
코딩교육 티씨피스쿨
4차산업혁명, 코딩교육, 소프트웨어교육, 코딩기초, SW코딩, 기초코딩부터 자바 파이썬 등
tcpschool.com
2. date 내장 객체
웹 브라우저가 설치된 PC(혹은 스마트 장치)의 현재 시간을 얻어오거나 날짜/시간을 계산하는데 필요한 기능을 제공
2-1. getFullYear(), getMonth(), getDate()
- getFullYear() : 현재 연도 리턴
- getMonth() : 현재 월보다 하나 작은 수를 리턴한다.
0 : 1월 ~ 11 : 12월 (1을 더해주어야 현재 월을 출력할 수 있다.) - getDate() : 현재 일 리턴
let mydate = new Date();
// 년, 월, 일 리턴
let yy = mydate.getFullYear();
let mm = mydate.getMonth() + 1;
let dd = mydate.getDate();
let result = yy + '-' + mm + '-' + dd;
document.write("<h1>" + result + "</h1>"); // 오늘 날짜 연-월-일 순으로 출력됨
2-2. getDay()
함수의 리턴값이 요일을 의미한다.
0: 일요일 ~ 6 : 토요일
숫자값이기 때문에, 실제 요일을 의미하는 문자열을 출력하기 위해서는 일요일부터 토요일까지를 내장하고 있는 배열을 생성한 후, getDate() 함수의 리턴값을 배열의 인덱스로 활용한다.
// 요일 저장 배열
let days = ["일", "월", "화", "수", "목", "금", "토"];
let mydate = new Date();
let i = mydate.getDay();
let day = days[i];
document.write("<h1>" + day + "</h1>"); // 오늘 요일 출력됨
2-3. setInterval()
1/1000초 단위의 시간 값을 파라미터로 설정하여 정해진 시간마다 한 번씩 파라미터로 전달된 함수를 반복적으로 호출한다.
- setInterval 함수를 활용한 타이머
- printTime 함수를 1초에 한 번씩 반복해서 자동 호출한다.
- ex. setInterval(printTime, 1000);
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Insert title here</title>
</head>
<body onload="startTimer();">
<h1 id = "timer"></h1>
<script>
// 파라미터로 정의된 함수를 1초에 한 번씩 반복해서 자동 호출
// 별도의 함수를 정의하는 형태가 아니라 다음과 같이
// function(){} 익명함수를 직접 설정하는 것도 가능하다.
// 이처럼 파라미터 형태로 전달되는 함수를 -> 콜백함수
/*
setInterval(function(){
.. 함수 내용 ..
}, 1000);
*/
function printTime(){
// 현재 시간을 구한다.
let days = ['일', '월', '화', '수', '목', '금', '토'];
let mydate = new Date();
let yy = mydate.getFullYear();
let mm = mydate.getMonth() + 1;
let dd = mydate.getDate();
let i = mydate.getDay();
let day = days[i];
let hh = mydate.getHours();
let mi = mydate.getMinutes();
let ss = mydate.getSeconds();
// 완성된 현재시각
let result =
yy + "-" + mm + "-" + dd + "-" +
day + "요일" + hh + ":" + mi + ":" + ss;
// id 속성값이 timer인 요소에게 결과를 출력
document.getElementById("timer").innerHTML = result;
}
function startTimer(){
// printTime함수를 1초에 한 번씩 호출
setInterval(printTime, 1000);
}
</script>
</body>
</html>
[출력 결과]
728x90
'이론 > 자바 풀스택 국비수업' 카테고리의 다른 글
220512 Javascript 8 (0) | 2022.06.22 |
---|---|
220512 Javascript 7 (0) | 2022.06.22 |
220511 Javascript 문제 (0) | 2022.06.21 |
220510 Javascript 5 (0) | 2022.06.21 |
220510 Javascript 4 (0) | 2022.06.21 |