자바스크립트 자료형3

이경준·2021년 2월 7일
0

자료형 연습

목록 보기
3/3

1. (year,month,date)를 입력하면 요일로 반환하기(feat:new Date,getDay)

function getWeekDay(year, month, date) {
  const week = ["일", "월", "화", "수", "목", "금", "토"];

  const day = new Date(year, month - 1, date).getDay();

  console.log(week[day]);
}

2.(new Date(), 몇일?)을 입력하면 입력한 날짜의 "몇일"전의 날짜 받기(feat:new Date, setDate, getDate)

const date = new Date()

function getDateAgo(date,days){
  let newDate = new Date(date)
  
  newDate.setDate(date.getDate() - days)
  
  console.log(newDate.getDate())
}

3. (year,month)를 입력하면 month의 마지막 날짜 구하기(feat:new Date)

function getLastDayOfMonth(year,month){
  const lastDay = new Date(year,month,0)
  
  console.log(lastDay.getDate())
}

4. 오늘 0시부터 현재까지 몇초가 지났는지 구하기(feat:new Date, Math round)

function getSecondsToday() {
  const newDate = new Date();
  const year = newDate.getFullYear();
  const month = newDate.getMonth();
  const date = newDate.getDate();

  const ms = newDate - new Date(year, month, date);
  console.log(Math.round(ms / 1000));
}

5. 현재부터 내일이 되기까지 몇초 남았는지 구하기(feat:new Date, Math round)

function getSecondsToTomorrow() {
  const newDate = new Date();
  const year = newDate.getFullYear();
  const month = newDate.getMonth();
  const date = newDate.getDate();

  const tomorrow = new Date(year, month, date + 1);
  const ms = tomorrow - newDate;

  console.log(Math.round(ms / 1000));
}

1. 1초마다 printNumber(from,to)에 입력한 from에서 to까지의 번호 출력하기

1-1. setInterval 이용하기

function printNumber(from, to) {
  let currentNum = from;

  let go = setInterval(function run() {
    if (currentNum === to) {
      clearInterval(go);
    }
    console.log(currentNum);
    currentNum++;
  }, 1000);
}

1-2. setTimeout 이용하기

function printNumber(from, to) {
  let currentNum = from;

  setTimeout(function run() {
    if (currentNum < to) {
      setTimeout(run, 1000);
    }

    console.log(currentNum);
    currentNum++;
  }, 1000);
}
profile
내가 기억하기위한 블로그

0개의 댓글