๊ณต๋ถ€ ๊ธฐ๋ก โœ๏ธ/Javascript

Do-it! JS ์‹ค์Šต ๋ณต์Šต #unit 3

๋ฒ„๋‘˜ 2023. 4. 10. 15:10

unit3 ์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ์™€ ๊ฐ์ฒด


๐Ÿค” 8-1 ๋‚ ์งœ ๊ณ„์‚ฐ

 

const birthYear = document.querySelector("#year");
const birthMonth = document.querySelector("#month");
const birthDate = document.querySelector("#date");
const bttn = document.querySelector("#bttn");

const current = document.querySelector("#current");
const resultDays = document.querySelector("#days");
const resultHours = document.querySelector("#hours");

const today=new Date();

console.log(today.getFullYear());

bttn.addEventListener("click",()=>{
    const birthDay=new Date(birthYear.value,birthMonth.value-1,birthDate.value);

    let passed=today.getTime()-birthDay.getTime();
    let passedDay=(Math.floor(passed/(1000*60*60*24)));
    let passedHours=(Math.floor(passed/(1000*60*60)));

    current.innerText=
    `${today.getFullYear()}๋…„ ${today.getMonth() + 1}์›” ${today.getDate()}์ผ ${today.getHours()}์‹œ ${today.getMinutes()}๋ถ„ ํ˜„์žฌ`;
    
    resultDays.innerText=`๋‚ ์งœ๋กœ๋Š” ${passedDay}์ผ์ด ํ๋ฅด๊ณ ,`;
    resultHours.innerText=`์‹œ๊ฐ„์œผ๋กœ๋Š” ${passedHours}์‹œ๊ฐ„์ด ํ˜๋ €์Šต๋‹ˆ๋‹ค`;
})

 

โœ… point

1. ์™œ getMonth()+1 ์ธ๊ฐ€

2.์™œ -1์ธ๊ฐ€

3.new Date(์š”์†Œ)์˜ ๋ฐฉ์‹

4.getTime()

 

8-2. ๋ฌด์ž‘์œ„ ์ด๋ฒคํŠธ

 

const seed=document.querySelector("#seed");
const total=document.querySelector("#total");
const rafBtn=document.querySelector("#raffle");
const clearBtn=document.querySelector("#clear");

const result=document.querySelector("#result");
let luckNum=[];

rafBtn.addEventListener("click",(e)=>{

    e.preventDefault();
    for(let i=0;i<total.value;i++){
        luckNum[i]=Math.floor((Math.random())*seed.value+1);
    }
    result.classList.add("show");
    result.innerText=`๋‹น์ฒจ์ž:${luckNum}๋ฒˆ`;
    
})

 

 

โœ… point

Math.floor:๋‚ด๋ฆผ

 


9-1,2 class์™€ ์ƒ์†

 

class Pet{
    constructor(name,color){
        this.name=name;
        this.color=color;
    }
    run(){
        alert(`${this.name}์€ ๋‹ฌ๋ฆฐ๋‹ค`);
    }
}

class Cat extends Pet{
    constructor(name,color,breed){
        super(name,color);
        this.breed=breed;
    }
    viewInfo(){
        alert(`์ด๋ฆ„:${this.name} ํ’ˆ์ข…:${this.breed} ์ƒ‰์ƒ:${this.color}`);
    }
}

let cat = new Cat("๋ฒ„๋“ค๋ƒฅ","๊ฐˆ์ƒ‰","์‹œ๊ณ ๋ฅด์ž๋ธŒ");
cat.viewInfo();

 

 

โœ… point

this์˜ ์‚ฌ์šฉ

 


10-1. ๋ฐฐ์—ด์„ ํ‘œ์‹œํ•˜๊ณ  ์ถ”๊ฐ€

const origin = document.querySelector("#origin");
const result = document.querySelector("#result");

const arr=[2,4,6,8,10];
let sum=0;

function showArray(area,arr){
    let str;
    str="<table><tr>";
    for(let i=0;i<arr.length;i++){
        str+="<td>"+arr[i]+"</td>"
    }
    str+="</tr></table>"
    area.innerHTML=str;

}

showArray(origin,arr);

for(let i=0;i<arr.length;i++){
    sum+=arr[i];
}
arr.push(sum);

showArray(result,arr);

 

 

โœ… point

ํƒœ๊ทธ ์ถ”๊ฐ€ ๋ฐฉ๋ฒ•

๋ฐฐ์—ด.push()

 

 

10-2. ๋ฐฐ์—ด ์ถ”์ถœ

const origin=document.querySelector("#origin");
const result=document.querySelector("#result");
let numbers=[2,4,6,8,10];

//tail()
//๋ฐฐ์—ด๊ธธ์ด๊ฐ€ 1๋ณด๋‹ค ํฌ๋ฉด 1๋ฒˆ์งธ์š”์†Œ ๋นผ๊ณ  ๋‚˜๋จธ์ง€, 1์ด๋ฉด ๋ฐฐ์—ด ์ „์ฒด ๋ฐ˜ํ™˜
//slice(์‹œ์ž‘์œ„์น˜,๋์œ„์น˜) :์‹œ์ž‘์œ„์น˜,๋์œ„์น˜ ์ง์ „๊นŒ์ง€ ์ถ”์ถœ
function tail(a){
    if(a.length>1){
        let aa= a.slice(1);
        return aa;
    }else if(a.length==1){
        return a;
    }   
}


origin.innerText=numbers;
result.innerText=tail(numbers);

 

 

โœ… point

slice(์‹œ์ž‘์œ„์น˜,๋์œ„์น˜):์‹œ์ž‘์œ„์น˜~๋์œ„์น˜ ์ง์ „ ๊นŒ์ง€ ์ถ”์ถœ.

ํ•จ์ˆ˜์•ˆ์— return ๋ฐ˜ํ™˜๊ฐ’

 


๐Ÿค”   11-1 ๊ฐ์ฒด ๊ตฌ์กฐ ๋ถ„ํ•ด

 

class Lecture {
    constructor(hasTutor, lectID, members) {
      this.hasTutor = hasTutor;
      this.lectID = lectID;
      this.members = members;
    }
  }

function getStudents(classRoom){
    let {hasTutor,lectID,members}=classRoom;
    let tutor,students;

    (hasTutor)?[tutor,...students]=members:[...students]=members;
    return students;
}

let class1=new Lecture(false,"k01",["a","b","c"]);
let class2=new Lecture(true,"k02",["aa","bb","cc","dd"]);

console.log(`๊ฐ•์˜:${class1.lectID} ์ˆ˜๊ฐ•์ƒ:${getStudents(class1)}`);
console.log(`๊ฐ•์˜:${class2.lectID} ์ˆ˜๊ฐ•์ƒ:${getStudents(class2)}`);

 

 

โœ… point

๊ฐ์ฒด ๊ตฌ์กฐ ๋ถ„ํ•ด 

 

๐Ÿค”  11-2. ๋žœ๋ค ๋ณต๊ถŒ ๊ฐ์ฒด ๊ตฌ์กฐ ๋ถ„ํ•ด

 

const btn=document.querySelector("button");
const result=document.querySelector("#result");

const luckPro={
    max:6,
    total:45
};

btn.addEventListener("click",()=>{
    let {max,total}=luckPro;
    let luckArr= new Set();

    for(let i=0;i<max;i++){
        luckNum=Math.floor(Math.random()*total)+1;
        luckArr.add(luckNum);
    }
    result.innerText=`${[...luckArr]}`;
});

 

โœ… point

๊ฐ์ฒด ๊ตฌ์กฐ ๋ถ„ํ•ด