JAVASCRIPT js파일 및 css파일을 나눠서 관리

나눠서 파일 관리 방법 : <script src="js파일"></script> 

* window.onload는 한번만 실행된다. 

* 실행되는 파일의 onload가 우선순위이다.

* 그 다음 우선순위는 나중에 호출되는 js파일이 우선순이이다.

 

실행 결과

 

 

 

 

 

 

 

 

JAVASCRIPT 기능 (1)

.focus() : 해당하는곳에 초점을 맞춰준다

type="password" : 한글 입력 불가

onchange="" : 커서가 다른곳으로 이동 할 때

<!DOCTYPE html>
<html lang="en">
  <head>
    <meta charset="UTF-8" />
    <meta name="viewport" content="width=device-width, initial-scale=1.0" />
    <title>Document</title>
    <script>
      function myFocus() {
        let pwd = document.getElementById("pwd");
        console.log(pwd.value);
        if (pwd.value == "") {
          alert("password는 필수 항목 입니다");
          pwd.focus();
        } else {
          document.getElementById("copy").value = pwd.value;
        }
      }
      const pwdChk = () => {
        let pwd = document.getElementById("pwd");
        let pwdC = document.getElementById("pwdCheck");
        if (pwd.value != pwdC.value) {
          alert("일치하지 않습니다!!");
          pwd.value = "";
          pwdC.value = "";
          pwd.focus();
        }
      };
    </script>
  </head>
  <body>
    <!--
    <form action="ex29.html" method="get">
      <input type="text" id="txt" required /><br />
      <input type="text" id="pwd" /><br />
      <input type="text" id="copy" /><br />
      <input type="submit" value="클릭" onclick="myFocus()" /><br />
    </form>
    -->

    <input type="text" id="txt" /><br />
    <input type="password" id="pwd" /><br />
    <input type="password" id="pwdCheck" onchange="pwdChk()" /><br />
    <input type="text" id="copy" /><br />
    <input type="button" value="클릭" onclick="myFocus()" /><br />
  </body>
</html>

 

실행 결과

 

 

 

 

 

 

 

 

 

 

 

 

JAVASCRIPT 기능(2)

confirm() : '확인', '취소' 문구를 띄어줌

addEventListener(기능, 함수) : 기능을 실행했을 때 함수로 이동

window.open() : 새 창 열기 (_self : 창 그대로 유지, default = 새창)

 

실행 결과

JAVASCRIPT  기능 (3)

submit : 무조건 action에 있는 파일로 이동 (검증할때는 사용 X)

* button을 활용하려면 submit을 따로 호출해야 한다

* form태그에 있는 input태그만 불러올 수 있다

<!DOCTYPE html>
<html lang="en">
  <head>
    <meta charset="UTF-8" />
    <meta name="viewport" content="width=device-width, initial-scale=1.0" />
    <title>Document</title>
    <script>
      test = () => {
        let txt = document.getElementById("txt");
        if (txt.value == "") {
          alert("갑 입력 하세요");
          return;
        }
        //fo.submit();
        console.log(fo);
        console.log(fo.txt);
        console.log(fo.add);

        let f = document.getElementById("fo");
        console.log(f.querySelector(".div"));
        //console.log(f.getElementById("ddd"));
        f.querySelector(".div").innerHTML = "다른값 변경";
      };
    </script>
  </head>
  <body>
    <form id="fo" action="ex31.html">
      <div id="ddd" class="div">aaaa</div>
      <input type="text" id="txt" /><br />
      <input type="submit" onclick="test()" value="submit전송" />
      <input type="button" onclick="test()" value="btn전송" />
    </form>
  </body>
</html>

 

실행 결과

 

 

 

 

 

 

 

 

 

 

 

 

JAVASCRIPT 

.setAttribute(타입명, 타입이름) : 해당하는 이름의 타입을 생성 ex) 'a'라는 클래스 생성

.removeAttribute() : 해당하는 타입 삭제

<!DOCTYPE html>
<html lang="en">
  <head>
    <meta charset="UTF-8" />
    <meta name="viewport" content="width=device-width, initial-scale=1.0" />
    <title>Document</title>
    <style>
      #remove {
        display: none;
      }
      #remove.a {
        display: block;
        background: green;
      }
    </style>
    <script>
      function rmBlock() {
        let remove = document.getElementById("remove");
        remove.setAttribute("class", "a");
      }
      function rmNone() {
        let remove = document.getElementById("remove");
        remove.removeAttribute("class");
      }
    </script>
  </head>
  <body>
    <input type="button" value="클릭" onclick="rmBlock()" />
    <div id="remove">
      <h3>안녕하세요</h3>
      <input type="button" value="rmNone" onclick="rmNone()" />
    </div>
  </body>
</html>

 

실행 결과

 

 

 

 

 

 

 

 

 

 

 

 

Quiz01

풀이과정(1)

<!DOCTYPE html>
<html lang="en">
  <head>
    <meta charset="UTF-8" />
    <meta name="viewport" content="width=device-width, initial-scale=1.0" />
    <title>Document</title>
  </head>
  <body>
    <form action="register.html">
      <input type="submit" value="가입" />
    </form>
  </body>
</html>

풀이과정(2)

<!DOCTYPE html>
<html lang="en">
  <head>
    <meta charset="UTF-8" />
    <meta name="viewport" content="width=device-width, initial-scale=1.0" />
    <title>Document</title>
    <style>
      input {
        display: flex;
      }
    </style>
    <script>
      function register() {
        let id = document.getElementById("id");
        let pwd = document.getElementById("pwd");
        let pwdChk = document.getElementById("pwdChk");
        let name = document.getElementById("name");
        let fo = document.getElementById("fo");

        if (id.value == "") {
          alert("아이디는 필수사항입니다.");
          return;
        } else {
          if (pwd.value == "") {
            alert("비밀번호는 필수사항입니다.");
            return;
          } else {
            if (pwdChk.value == "") {
              alert("비밀번호 확인은 필수사항입니다.");
              return;
            } else {
              fo.submit();
            }
          }
        }
      }
      const pwdChk = () => {
        let pwd = document.getElementById("pwd");
        let pwdChk = document.getElementById("pwdChk");
        if (pwd.value != pwdChk.value) {
          alert("일치하지 않습니다!!");
          pwd.value = "";
          pwdChk.value = "";
          pwd.focus();
        }
      };
    </script>
  </head>
  <body>
    <input id="id" type="text" placeholder="아이디" />
    <input id="pwd" type="text" placeholder="비밀번호" />
    <input
      id="pwdChk"
      type="text"
      placeholder="비밀번호 확인"
      onchange="pwdChk()"
    />
    <input id="name" type="text" placeholder="이름" />
    <hr />
    <form id="fo" action="success.html">
      <input type="button" onclick="register()" value="등록" />
    </form>
  </body>
</html>

풀이과정(3)

<!DOCTYPE html>
<html lang="en">
  <head>
    <meta charset="UTF-8" />
    <meta name="viewport" content="width=device-width, initial-scale=1.0" />
    <title>Document</title>
    <script>
      function load() {
        alert("가입을 축하 합니다.");
      }
    </script>
  </head>
  <body onload="load()"></body>
</html>

 

실행 결과

 

'javaScript' 카테고리의 다른 글

JAVASCRIPT 활용 (2)  (0) 2024.03.26
JAVASCRIPT 활용  (0) 2024.03.25
JAVASCRIPT 기초  (0) 2024.03.22

 

 

 

 

 

JAVASCRIPT 배열

배열 추가(변경) 방법 : 배열명[인덱스명] = "값";

.join() : 배열 사이에 넣을 값 지정 (default = ,) (타입 = String)

<!DOCTYPE html>
<html lang="en">
  <head>
    <meta charset="UTF-8" />
    <meta name="viewport" content="width=device-width, initial-scale=1.0" />
    <title>Document</title>
  </head>
  <body>
    <script>
      const city = ["서울", "부산", "인천"];
      const printArr = () => {
        for (let i = 0; i < city.length; i++) {
          document.write(`배열 데이터[${i}] : ${city[i]}<br>`);
        }
      };
      printArr();
      city[3] = "대구";
      document.write("<hr>" + city);
      document.write(`<br>${typeof city}<br>`);
      const join01 = city.join();
      const join02 = city.join("-");
      document.write(`조인 결과 1 : ${join01}, type : ${typeof join01}<br>`);
      document.write(`조인 결과 2 : ${join02}, type : ${typeof join02}<br>`);
    </script>
  </body>
</html>

 

실행 결과

 

 

 

 

 

 

 

 

 

 

 

JAVASCRIPT 배열 (2)

배열명.push() : 배열 맨 뒤에 값을 추가

배열명.pop() : 배열 맨 뒤 값을 삭제

배열명.unshift() : 배열 맨 앞에 값을 추가

배열명.shift() : 배열 맨 앞에 값을 삭제

배열명.concat() : 해당 배열을 복사한다 (복사 후 추가도 가능)

<!DOCTYPE html>
<html lang="en">
  <head>
    <meta charset="UTF-8" />
    <meta name="viewport" content="width=device-width, initial-scale=1.0" />
    <title>Document</title>
  </head>
  <body>
    <script>
      let kdata = ["서울", "부산"];
      document.write(`기본 배열 : ${kdata}<hr>`);
      kdata.push("인천", "대구");
      document.write(`push : ${kdata}<br>`);
      kdata.pop();
      document.write(`pop : ${kdata}<hr>`);

      kdata.unshift("111", "222");
      document.write(`unshift : ${kdata}<br>`);
      kdata.shift();
      document.write(`shift : ${kdata}<hr>`);

      let data = kdata.concat("안녕", "하세요");
      document.write(`concat : ${data}, type : ${typeof data}<br>`);
      document.write(`shift : ${kdata}<hr>`);
      
    </script>
  </body>
</html>

 

실행 결과

 

 

 

 

 

 

 

 

 

 

JAVASCRIPT 배열 (3)

배열명.forEach(함수); : 단순출력, 연산 (return값을 가질 수 없다)

배열명.map(함수); : return값을 가질 수 있다

* 함수를 생성해서 넣을수도 있고, 생성된 함수를 넣을수도 있다

<!DOCTYPE html>
<html lang="en">
  <head>
    <meta charset="UTF-8" />
    <meta name="viewport" content="width=device-width, initial-scale=1.0" />
    <title>Document</title>
  </head>
  <body>
    <script>
      const data = ["1111", "2222", "3333"];
      for (let i = 0; i < data.length; i++) {
        document.write(data[i] + "<br>");
      }
      document.write("<hr>");
      //   function t(d) {
      //     console.log(d);
      //   }

      //   const t = (d) => {
      //     console.log(d);
      //   };
      //   data.forEach(t);

      data.forEach((d) => {
        document.write(d + "<br>");
      });
      /*
      function t02(d) {
        return `<b style="color:blue;">${d}</b>`;
      }
      */
      const t02 = (d) => `<b style="color:red;">${d}</b>`;
      const mapData = data.map(t02);
      document.write("<hr>" + mapData + "<hr>");

      const mapData02 = data.map((d) => `<b style="color:yellow;">${d}</b>`);
      document.write("<hr>" + mapData02 + "<hr>");
    </script>
  </body>
</html>

 

실행 결과

 

 

 

 

 

 

 

 

 

 

JAVASCRIPT 배열 (4)

dic : 키와 값을 가진다

<!DOCTYPE html>
<html lang="en">
  <head>
    <meta charset="UTF-8" />
    <meta name="viewport" content="width=device-width, initial-scale=1.0" />
    <title>Document</title>
  </head>
  <body>
    <script>
      let dic = { f0: 100, f1: 200 };
      document.write(`기본 값 : ${dic}<br>`);

      function test() {
        document.write("test실행<br>");
      }

      dic.f2 = "값 추가";
      dic["f3"] = "f3333";
      dic.func = test;

      document.write(dic + "<br>");
      document.write(dic["f1"] + "<br>");
      document.write(dic.f2 + "<br>");
      document.write(dic.func + "<br>");
      dic.func();
    </script>
  </body>
</html>

 

실행 결과

 

 

 

 

 

 

 

 

 

 

 

 

JAVASCRIPT 배열 (5)

배열명.filter(함수) : 데이터를 비교해서 해당하는 값만 돌려줌

<!DOCTYPE html>
<html lang="en">
  <head>
    <meta charset="UTF-8" />
    <meta name="viewport" content="width=device-width, initial-scale=1.0" />
    <title>Document</title>
  </head>
  <body>
    <script>
      const data = [10, 20, 30, 40, 50, 60, 70, 80, 90, 100];
      const filter01 = (value, index) => {
        console.log(`index : ${index}, value : ${value}`);
        return value >= 50;
      };
      const result01 = data.filter(filter01);
      document.write(result01 + "<br>");
      
      const result02 = data.filter((value) => value <= 50);
      document.write(result02 + "<br>");
    </script>
  </body>
</html>

 

실행 결과

 

 

 

 

 

 

 

 

 

 

 

JAVASCRIPT 배열 (6)

for (const 타입명 of 배열명) : forEach문

<!DOCTYPE html>
<html lang="en">
  <head>
    <meta charset="UTF-8" />
    <meta name="viewport" content="width=device-width, initial-scale=1.0" />
    <title>Document</title>
    <script>
      let userDB = [
        { id: "aaa", name: "홍길동", age: "20" },
        { id: "bbb", name: "김개똥", age: "30" },
        { id: "ccc", name: "고길동", age: "40" },
      ];
      function init() {
        //alert("실행");
        const div = document.querySelector(".test");
        let msg = `아이디 : ${userDB[0].id}<br>
        이름 : ${userDB[0].name}<br>
        나이 : ${userDB[0].age}<br>`;
        div.innerHTML = msg;

        const div2 = document.querySelector(".test2");
        let msg2 = "";
        for (const user of userDB) {
          msg2 += `아이디 : ${user.id}<br>
            이름 : ${user.name}<br>
            나이 : ${user.age}<br>`;
        }
        div2.innerHTML = msg2;
      }
    </script>
  </head>
  <body onload="init()">
    <div class="test"></div>
    <hr />
    <div class="test2"></div>
  </body>
</html>

 

실행 결과

 

 

 

 

 

 

 

 

 

 

Quiz01

 

풀이 과정

<!DOCTYPE html>
<html lang="en">
  <head>
    <meta charset="UTF-8" />
    <meta name="viewport" content="width=device-width, initial-scale=1.0" />
    <title>Document</title>
    <script>
      let userInfo = [
        { id: "aaa", name: "홍길동", age: 20 },
        { id: "bbb", name: "김개똥", age: 30 },
        { id: "ccc", name: "고길동", age: 40 },
      ];
      function init() {
        const div1 = document.querySelector(".list");
        let msg1 = `<h3>목록을 보여 줍니다</h3><hr>`;
        div1.innerHTML = msg1;

        // const div2 = document.querySelector(".search");
        // let msg2 = `<hr><input placeholder="input id" id="search">`;
        // div2.innerHTML = msg2;

        // const div3 = document.querySelector(".delete");
        // let msg3 = `<hr><input placeholder="input id">`;
        // div3.innerHTML = msg3;
      }
      function listFunc() {
        const list1 = document.querySelector(".list");
        let msg01 = `<table border="1">`;
        msg01 += `<tr>
                        <td>아이디</td> <td>이름</td> <td>나이</td>
                     </tr>`;
        for (i = 0; i < userInfo.length; i++) {
          console.log(userInfo[i].id);
          msg01 += `<tr>
                        <td>${userInfo[i].id}</td> <td onclick="info('${userInfo[i].name}')">${userInfo[i].name}</td> <td>${userInfo[i].age}</td>
                     </tr>`;
        }
        msg01 += `</table>`;

        list1.innerHTML = msg01;
      }
      function info(name) {
        const list = document.querySelector(".list");
        let msg;
        for (i = 0; i < userInfo.length; i++) {
          if (name == userInfo[i].name) {
            msg = `<h2>아이디 : ${userInfo[i].id}</h2>
                <h2>이름 : ${userInfo[i].name}</h2>
                    <h2>나이 : ${userInfo[i].age}</h2>
                `;
          }
        }
        list.innerHTML = msg;
      }

      function searchFunc() {
        const search = document.querySelector("#search");
        val = search.value;

        const list1 = document.querySelector(".list");
        let msg02 = `<table border="1">`;
        msg02 += `<tr>
                        <td>아이디</td> <td>이름</td> <td>나이</td>
                     </tr>`;
        for (i = 0; i < userInfo.length; i++) {
          if (val == userInfo[i].id) {
            msg02 += `<tr>
                        <td>${userInfo[i].id}</td> <td>${userInfo[i].name}</td> <td>${userInfo[i].age}</td>
                     </tr>`;
          }
        }
        msg02 += `</table>`;
        list1.innerHTML = msg02;
      }
      function deleteFunc() {
        const d = document.querySelector("#delete");
        val2 = d.value;

        const list2 = document.querySelector(".list");
        let msg03 = `<table border="1">`;
        msg03 += `<tr>
                        <td>아이디</td> <td >이름</td> <td>나이</td>
                     </tr>`;

        function rs(value) {
          return value.id != val2;
        }
        const result = userInfo.filter(rs);

        for (i = 0; i < result.length; i++) {
          msg03 += `<tr>
                        <td>${result[i].id}</td> <td >${result[i].name}</td> <td>${result[i].age}</td>
                     </tr>`;
        }
        console.log(result.id);
        msg03 += `</table>`;
        list2.innerHTML = msg03;
      }
      function ad(asdf) {
        console.log(asdf);
      }
    </script>
  </head>
  <body onload="init()">
    <div class="list"></div>
    <button id="btnList" onclick="listFunc()">모든 회원 보기</button>
    <div>
      <hr />
      <input placeholder="input id" id="search" />
    </div>
    <div></div>
    <button id="btnSearch" onclick="searchFunc()">특정 회원 조회</button>
    <div></div>

    <div>
      <hr />
      <input placeholder="input id" id="delete" />
    </div>
    <button id="btnDelete" onclick="deleteFunc()">특정 회원 삭제</button>
  </body>
</html>

 

실행 결과

 

 

 

 

 

 

 

 

 

JAVASCRIPT 배열 

setTimeout(함수, 시간); : 해당하는 함수를 실행하는데 걸리는 시간 지정 (1000 = 1초)

clearTimeout(setTimeout()) : setTimeout()을 취소하는 역할

Date() : 현재 시간을 알려주는 내장 함수

<!DOCTYPE html>
<html lang="en">
  <head>
    <meta charset="UTF-8" />
    <meta name="viewport" content="width=device-width, initial-scale=1.0" />
    <title>Document</title>
  </head>
  <body>
    <script>
      const test = () => {
        //alert("test 호출");
      };
      window.onload = () => {
        //document.write("처음 실행<br>");
        //setTimeout(test, 2000);
        //document.write("2초 대기중...<br>");
      };
      let e;
      const digClock = () => {
        let today = new Date();
        let time = today.getMonth() + 1 + "월";
        time += today.getDate() + "일";
        time += today.getHours() + "시";
        time += today.getMinutes() + "분";
        time += today.getSeconds() + "초";
        document.getElementById("clock").innerHTML = time;
        e = setTimeout(digClock, 1000);
      };
      const end = () => {
        clearTimeout(e);
      };
    </script>
    <div id="clock"></div>
    <button onclick="digClock()">시작</button>
    <button onclick="end()">종료</button>
  </body>
</html>

 

실행 결과

 

 

 

 

 

 

 

 

 

 

JAVASCRIPT 

setInterval(함수, 시간) : 지정한 시간이 지날때마다 함수를 반복 실행 

clearInterval() : setInterval()을 취소하는 역할

.toLocalString() : 객체에 맞춰 문자열을 반환

<!DOCTYPE html>
<html lang="en">
  <head>
    <meta charset="UTF-8" />
    <meta name="viewport" content="width=device-width, initial-scale=1.0" />
    <title>Document</title>
  </head>
  <body>
    <script>
      let myVar;
      const start = () => {
        myVar = setInterval(myTimer, 1000);
      };
      const myTimer = () => {
        let d = new Date();
        document.getElementById("time").innerHTML = d.toLocaleString();
      };
      const stop = () => {
        clearInterval(myVar);
      };
    </script>
    <p id="time"></p>
    <button onclick="start()">start</button>
    <button onclick="stop()">stop</button>
  </body>
</html>

 

실행 결과

 

 

 

 

 

 

 

 

 

 

JAVASCRIPT

.insertAdjacentHTML("afterbegin") : 앞에 내용 추가

.insertAdjacentHTML("beforeend") : 뒤에 내용 추가

<!DOCTYPE html>
<html lang="en">
  <head>
    <meta charset="UTF-8" />
    <meta name="viewport" content="width=device-width, initial-scale=1.0" />
    <title>Document</title>
  </head>
  <body>
    <script>
      var cnt = 0;
      const inner = () => {
        cnt++;
        let msg = `내용 : ${cnt}<br>`;
        let txt = document.getElementById("txt");
        txt.innerHTML = msg;
        //txt.insertAdjacentHTML("afterbegin", msg);
        //txt.insertAdjacentHTML("beforeend", msg);
      };
    </script>
    <div id="txt">안녕하세요</div>
    <button onclick="inner()">클릭</button>
  </body>
</html>

 

실행 결과

 

 

 

 

 

 

 

 

 

 

 

JAVASCRIPT

.setAttribute() : 속성값 설정(추가)

document.createElement() : html태그요소를 추가(설정)하는 역할

태그명.appendChild() : 태그의 자식요소에 추가하는 역할

.remove() : 해당 태그 전체 삭제

.removeChild(객체) : 먼저 삭제할 객체를 지정해서 하나씩 삭제 

<!DOCTYPE html>
<html lang="en">
  <head>
    <meta charset="UTF-8" />
    <meta name="viewport" content="width=device-width, initial-scale=1.0" />
    <title>Document</title>
  </head>
  <body>
    <script>
      let img;
      function add() {
        img = document.createElement("img");
        console.log(img);
        img.src = "image.png";
        img.setAttribute("width", "100");
        img.setAttribute("style", "height:100px border : 1px solid;");

        document.getElementById("test").appendChild(img);
      }
      function addTB() {
        let data = [
          { id: "aaa", name: "홍길동" },
          { id: "bbb", name: "김개똥" },
        ];
        let table = document.createElement("table");
        data.forEach((value) => {
          var tr = document.createElement("tr");
          var td1 = document.createElement("td");
          td1.innerHTML = value.id;
          tr.appendChild(td1);

          var td2 = document.createElement("td");
          td2.innerHTML = value.name;
          tr.appendChild(td2);

          table.appendChild(tr);
        });
        document.getElementById("test").appendChild(table);
      }
      function remove() {
        let items = document.getElementById("test");
        //document.getElementById("test").remove();
        //items.remove();
        items.removeChild(items.childNodes[0]);
        //items.removeChild(items.childNodes[items.childNodes.length - 1]);
      }
    </script>
    <p id="test"></p>
    <a href="#" onclick="addTB()">테이블 추가</a>
    <b onclick="add()">add 클릭</b>
    <b onclick="remove()">이미지 삭제 클릭</b>
  </body>
</html>

 

실행 결과

 

'javaScript' 카테고리의 다른 글

JAVASCRIPT 활용 (3)  (0) 2024.03.27
JAVASCRIPT 활용  (0) 2024.03.25
JAVASCRIPT 기초  (0) 2024.03.22

 

 

 

 

 

 

JAVASCRIPT  함수 기능 (1)

함수 생성 방법 : function 함수명() {}

함수 호출 방법 : 함수명();

<!DOCTYPE html>
<html lang="en">
  <head>
    <meta charset="UTF-8" />
    <meta name="viewport" content="width=device-width, initial-scale=1.0" />
    <title>Document</title>
  </head>
  <body>
    <script>
      console.log("프로그램 시작!!!");
      function test() {
        console.log("text 함수 실행");
      }
      console.log("함수 지나옴");
      test();
      console.log("프로그램 종료!!!");

      function localVal() {
        let num = 20000;
        if (true) {
          num += 10000;
          console.log("if : " + num);
        }
        console.log("localVal : " + num);
      }
      localVal();

      let num = 1234;
      function localVal01() {
        console.log("localVal01 : " + num);
      }
      function localVal02() {
        console.log("localVal02 : " + num);
      }
      localVal01();
      localVal02();
    </script>
  </body>
</html>

 

실행 결과

 

 

 

 

 

 

 

 

 

 

JAVASCRIPT 함수 기능 (2)

<!DOCTYPE html>
<html lang="en">
  <head>
    <meta charset="UTF-8" />
    <meta name="viewport" content="width=device-width, initial-scale=1.0" />
    <title>Document</title>
  </head>
  <body>
    <script>
      /*
      sumFunc();
      function sumFunc() {
        const n1 = prompt("수 입력");
        const n2 = prompt("수 입력");
        const sum = Number(n1) + Number(n2);
        document.write(`${n1} + ${n2} = ${sum}<br>`);
      }
      */
      /*
      const n1 = prompt("수 입력");
      const n2 = prompt("수 입력");
      sumFunc(n1, n2);
      function sumFunc(n1, n2) {
        const sum = Number(n1) + Number(n2);
        document.write(`${n1} + ${n2} = ${sum}<br>`);
      }
      */
      const n1 = prompt("수 입력");
      const n2 = prompt("수 입력");
      const sum = op(n1, n2);
      sumFunc(n1, n2, sum);
      function op(n1, n2) {
        const sum = Number(n1) + Number(n2);
        return sum;
      }
      function sumFunc(n1, n2, sum) {
        document.write(`${n1} + ${n2} = ${sum}<br>`);
      }
    </script>
  </body>
</html>

 

실행 결과

 

 

 

 

 

 

 

 

 

 

JAVASCRIPT  함수 기능 (3)

* return으로 여러개 값을 돌려주려면 배열 or object 타입 사용 가능

꺼내오는 방법 : 함수명[인덱스] or 함수명["키 값"] or 함수명.키 값

<!DOCTYPE html>
<html lang="en">
  <head>
    <meta charset="UTF-8" />
    <meta name="viewport" content="width=device-width, initial-scale=1.0" />
    <title>Document</title>
  </head>
  <body>
    <script>
      function testFunc01() {
        let num = 95;
        let txt = "안녕하세요";
        return num, txt;
      }
      const result = testFunc01();
      document.write(result + "<hr>");

      function testFunc02() {
        let num = 95;
        let txt = "안녕하세요";
        const arr = [num, txt];
        return arr;
      }
      const result2 = testFunc02();
      document.write(result2 + "<br>");
      document.write(result2[0] + "<br>");
      document.write(result2[1] + "<hr>");

      function testFunc03() {
        let num = 95;
        let txt = "안녕하세요";
        const arr = { num: num, txt: txt };
        return arr;
      }
      const result3 = testFunc03();
      console.log(result3);
      document.write(result3["num"] + "<br>");
      document.write(result3.txt + "<hr>");
    </script>
  </body>
</html>

 

실행 결과

 

 

 

 

 

 

 

 

 

 

JAVSCRIPT 함수 기능 (4)

* 함수 이름이 같으면, 인자 개수가 달라도 마지막 함수만 실행

* arguments를 통해 매개변수의 개수 제한없이 받아올 수 있다

<!DOCTYPE html>
<html lang="en">
  <head>
    <meta charset="UTF-8" />
    <meta name="viewport" content="width=device-width, initial-scale=1.0" />
    <title>Document</title>
  </head>
  <body>
    <script>
      function test01(x, y) {
        console.log("첫번째 함수 실행!!!");
      }
      function test01(x) {
        return x;
      }
      document.write("함수 호출 인자 없음 : " + test01() + "<br>");
      document.write("함수 호출 인자 1 : " + test01(10) + "<br>");
      document.write("함수 호출 인자 2 : " + test01(10, 20) + "<br>");

      function test02(x, y, z) {
        document.write(`${x}, ${y}, ${z} <br>`);
        if (z == undefined) {
          sum = x + y;
        } else {
          sum = x + y + z;
        }
        return sum;
      }
      let r1 = test02(10, 20);
      let r2 = test02(10, 20, 30);
      document.write(`매개변수 2개 : ${r1}<br>`);
      document.write(`매개변수 3개 : ${r2}<br>`);

      function test03() {
        console.log(arguments.length);
        let i,
          sum = 0;
        for (i = 0; i < arguments.length; i++) {
          sum = sum + arguments[i];
          document.write(arguments[i]);
        }
        return sum;
      }
      let r3 = test03(10, 20);
      let r4 = test03(10, 20, 30);
      document.write(`매개변수 2개 : ${r3}<br>`);
      document.write(`매개변수 3개 : ${r4}<br>`);
    </script>
  </body>

 

실행 결과

 

 

 

 

 

 

 

 

 

 

 

JAVASCRIPT 즉시 실행 함수

즉시 실행 함수 표현식 : (function 함수명(){})();

* 즉시 실행 함수에 값을 전달해 줄 때, (값); 방식으로 전달해준다

<!DOCTYPE html>
<html lang="en">
  <head>
    <meta charset="UTF-8" />
    <meta name="viewport" content="width=device-width, initial-scale=1.0" />
    <title>Document</title>
  </head>
  <body>
    <script>
      (function test() {
        //alert("즉시 실행 함수!!!");
      })();
      let result = (function test1() {
        return "서버로 부터 데이터를 받아와 화면에 보여줌";
      })();
      document.write(result + "<br>");

      let name = "홍길동";
      let result02 = (function test02(n) {
        let db = n + "님의 정보 입니다";
        return db;
      })(name);
      document.write(result02 + "<br>");
    </script>
  </body>
</html>

 

실행 결과

 

 

 

 

 

 

 

 

 

 

 

JAVASCRIPT 익명 함수

익명 함수 표현식 : let 변수명 = function(){};  또는

                      let 변수명 = () => ;   또는

              let 변수명 = () => {};

* =>표현식을 쓸 때 중괄호를 쓰게 되면 return을 추가해야 한다

<!DOCTYPE html>
<html lang="en">
  <head>
    <meta charset="UTF-8" />
    <meta name="viewport" content="width=device-width, initial-scale=1.0" />
    <title>Document</title>
  </head>
  <body>
    <script>
      function test(x, y) {
        return x + y;
      }
      document.write(test(1, 2) + "<br>");

      let sumFunc = function (x, y) {
        return x + y;
      };
      document.write(sumFunc(10, 20) + "<br>");

      let sumFunc1 = (x, y) => x + y;
      document.write(sumFunc1(100, 200) + "<br>");

      let sumFunc2 = (x, y) => {
        let num = 100;
        return x + y + num;
      };
      document.write(sumFunc2(1000, 2000) + "<br>");

      const result01 = () => {
        10 + 20
      };
      const result02 = () => 10 + 20;
      const result03 = () => (10 + 20);

      document.write("<hr>");
      document.write(result01() + "<br>");
      document.write(result02() + "<br>");
      document.write(result03() + "<br>");
    </script>
  </body>
</html>

 

실행 결과

 

 

 

 

 

 

 

 

 

Quiz01

풀이 과정

<!DOCTYPE html>
<html lang="en">
  <head>
    <meta charset="UTF-8" />
    <meta name="viewport" content="width=device-width, initial-scale=1.0" />
    <title>Document</title>
  </head>
  <body>
    <script>
      let input = () => {
        let num1 = Number(prompt("첫번째 수 입력"));
        let num2 = Number(prompt("두번째 수 입력"));
        const arr = { num1: num1, num2: num2 };
        return arr;
      };

      let result01 = (n1, n2) => {
        if (n1 > n2) {
          return n1;
        } else {
          return n2;
        }
      };
      let arr = input();
      document.write("큰 수 : " + result01(arr.num1, arr.num2) + "<hr>");

      let input02 = () => {
        let num1 = Number(prompt("수(홀, 짝) 입력"));
        return num1;
      };

      let result02 = (n) => {
        if (n % 2 == 0) {
          return "짝수 입니다.";
        } else {
          return "홀수 입니다.";
        }
      };

      ////////////////////////////
      let num2 = input02();
      document.write("수는 " + result02(num2) + "<hr>");

      let input03 = () => {
        let num1 = Number(prompt("수(3의 배수) 입력"));
        return num1;
      };

      let result03 = (n) => {
        if (n % 3 == 0) {
          return "3의 배수 입니다.";
        } else {
          return "3의 배수가 아닙니다.";
        }
      };
      num3 = input03();
      document.write("수는 " + result03(num3) + "<hr>");

      let input04 = () => {
        let num1 = Number(prompt("수(소수) 입력"));
        return num1;
      };

      let result04 = (n) => {
        for (i = 2; i <= n; i++) {
          if (n % i == 0) {
            if (i == n) {
              return "소수 입니다";
            } else {
              return "소수가 아닙니다";
            }
          }
        }
      };
      num4 = input04();
      document.write("수는 " + result04(num4) + "<hr>");

      let input05 = () => {
        let num1 = Number(prompt("수(절대값) 입력"));
        return num1;
      };

      let result05 = (n) => {
        return Math.abs(n);
      };
      let num5 = input05();
      document.write("수의 절대값 : " + result05(num5) + "<hr>");
    </script>
  </body>
</html>

 

실행 결과

 

 

 

 

 

 

 

 

 

 

 

JAVASCRIPT event (1)

onclick="" : 클릭 할 경우 실행

ondblclick="" : 더블클릭 할 경우 실행

onmouseover="" : 마우스를 위에 올렸을 때 실행

document.getElementById(" "); : id값이 일치하는 태그값을 얻어오겠다는 뜻

* 얻어온 태그 활용 법 : id값.기능

document.getElementByClassName(" "); : 클래스명이 일치하는 태그값을 얻어오겠다는 뜻

document.querySelector(" "); : id또는 클래스기 일치하는 태그값을 얻어오겠다는 뜻

window.onload : 페이지가 호출되면 자동으로 실행

메소드.addEventListener("방식", 실행 할 메소드) : 해당 메소드를 어떤 방식을 동작 했을때 선택한 메소드 실행

.innerHTML : html 형식으로 적용

.innerText : text 문자 형식으로 적용

<!DOCTYPE html>
<html lang="en">
  <head>
    <meta charset="UTF-8" />
    <meta name="viewport" content="width=device-width, initial-scale=1.0" />
    <title>Document</title>
    <style>
      #h3 {
        color: red;
      }
    </style>
  </head>
  <body>
    <script>
      //function clickEvent(){}
      const clickEvent = () => {
        //alert("클릭");
        const name = document.getElementById("name");
        console.log(name);
        /*
        name.value = "안녕하세요";
        name.style.background = "red";
        */
        const name1 = document.querySelector("#name2");
        console.log(name1);
        name1.value = name.value;
        name.value = "";
      };
      window.onload = () => {
        //alert("onload");
        //document.getElementsByClassName("btn");
        const btn = document.querySelector(".btn");
        console.log(btn);
        btn.addEventListener("click", innerTest);
      };
      const innerTest = () => {
        const txt = document.getElementById("text");
        let msg = "<h3 id='h3'>내용바꾸기</h3>";
        txt.innerHTML = msg;
        //txt.innerText = msg;
      };
    </script>
    <input type="text" id="name" placeholder="input name" /><br />
    <input type="text" id="name2" placeholder="input name" /><br />
    <input type="button" onclick="clickEvent()" value="클릭" />
    <input type="button" class="btn" value="클릭2" />
    <br />
    <label id="text">텍스트 값</label>
  </body>
</html>

 

실행 결과

 

 

 

 

 

 

 

 

 

 

JAVASCRIPT event (2)

onmousedown="" : 마우스 클릭했을 때

onmouseup="" : 마우스 클릭 후 땠을 때

onmousemove="" : 마우스가 움직일 때

onmouseover="" : 마우스가 들어왔을 때

onmouseout="" : 마우스가 나갔을 때

* onload() = html 실행 후 실행된다

<!DOCTYPE html>
<html lang="en">
  <head>
    <meta charset="UTF-8" />
    <meta name="viewport" content="width=device-width, initial-scale=1.0" />
    <title>Document</title>
    <script>
      const myMousedown = () => {
        document.getElementById("span").innerHTML = "마우스 DOWN";
      };
      const myMouseup = () => {
        document.getElementById("span").innerHTML = "마우스 UP";
      };
      let cnt = 0;
      const myMousemove = () => {
        cnt++;
        document.getElementById("count1").innerHTML = cnt;
      };
      const myMouseover = () => {
        cnt++;
        document.getElementById("count2").innerHTML = cnt;
      };
      const myMouseout = () => {
        document.getElementById("count2").innerHTML = "마우스 나감";
      };
    </script>
  </head>
  <body>
    <div onmousedown="myMousedown()" onmouseup="myMouseup()">
      <span id="span">이벤트 알아보기</span>
    </div>
    <div
      onmousemove="myMousemove()"
      style="background: gray; width: 100px; height: 100px"
    >
      <span id="count1">0</span>
    </div>
    <div
      onmouseover="myMouseover()"
      onmouseout="myMouseout()"
      style="background: gray; width: 100px; height: 100px"
    >
      <span id="count2">0</span>
    </div>
  </body>
</html>

 

실행 결과

 

 

 

 

 

 

 

 

 

 

 

 

 

JAVASCRIPT event (3)

<!DOCTYPE html>
<html lang="en">
  <head>
    <meta charset="UTF-8" />
    <meta name="viewport" content="width=device-width, initial-scale=1.0" />
    <title>Document</title>
    <style>
      img {
        width: 100px;
        height: 200px;
      }
    </style>
    <script>
      onload = () => {
        //alert("execute");
        let img = document.getElementById("myImg");
        img.addEventListener("mouseover", changeFunc01);
        img.addEventListener("mouseout", changeFunc01);
      };
      let num = 0;
      changeFunc01 = () => {
        const arr = ["image.png", "image2.png"];
        let myImg = document.getElementById("myImg");
        let myImg02 = document.getElementById("myImg02");
        myImg.src = arr[num];
        myImg02.src = arr[num];
        //num = num == 0 ? 1 : 0;
        if (num == 0) {
          num = 1;
        } else {
          num = 0;
        }
      };
    </script>
  </head>
  <body>
    <img id="myImg" src="image.png" /><br />
    <img
      id="myImg02"
      src="image.png"
      onmousedown="changeFunc01()"
      onmouseup="changeFunc01()"
    /><br />
  </body>
</html>

 

실행 결과

 

 

 

 

 

 

 

 

 

 

 

Quiz02

 

풀이 과정

<!DOCTYPE html>
<html lang="en">
  <head>
    <meta charset="UTF-8" />
    <meta name="viewport" content="width=device-width, initial-scale=1.0" />
    <title>Document</title>
    <style>
      * {
        margin: 0;
      }
      footer {
        background-color: pink;
        width: 280px;
        height: 50px;
        padding-left: 120px;
      }
    </style>
    <script>
      let num = 1;
      changeFunc = (n) => {
        let myImg = document.getElementById("myImg");
        if (n == 0) {
          num == 1 ? (num = 8) : num--;
          myImg.src = `최근상품0${num}.jpg`;
        } else {
          num == 8 ? (num = 1) : num++;
          myImg.src = `최근상품0${num}.jpg`;
        }
      };
    </script>
  </head>
  <body>
    <div>
      <img
        id="myImg"
        src="최근상품01.jpg"
        style="width: 400px; height: 400px"
      />
      <footer>
        <button onclick="changeFunc(0)">이전 사진</button>
        <button onclick="changeFunc(1)">다음 사진</button>
      </footer>
    </div>
  </body>
</html>

 

실행 결과

 

 

 

 

 

 

 

 

 

 

 

 

Quiz03

 

풀이 과정

<!DOCTYPE html>
<html lang="en">
  <head>
    <meta charset="UTF-8" />
    <title>겔러리</title>
    <style>
      * {
        margin: 0;
      }
      img {
        width: 100px;
        height: 100px;
      }
      .img {
        border: 1px solid gray;
        width: 100px;
        height: 100px;
        position: relative; 
      }
      .flex {
        display: flex;
      }
      span {
        position: absolute;
        background: orange;
        top: 25px;
        left: 25px;
        width: 50px;
        height: 50px;
        text-align: center;
        line-height: 50px;
      }
    </style>
    <script type="text/javascript">
      const images = [
        "resources/images/최근상품01.jpg",
        "resources/images/최근상품02.jpg",
        "resources/images/최근상품03.jpg",
        "resources/images/최근상품04.jpg",
        "resources/images/최근상품05.jpg",
        "resources/images/최근상품06.jpg",
        "resources/images/최근상품07.jpg",
        "resources/images/최근상품08.jpg",
      ];
      window.onload = function init() {
        console.log("init");
        let msg = "<div class='flex'>";
        for (let i = 0; i < images.length; i++) {
          msg += `<div class="img" id="${i}" onMousemove="imgOver(${i})" onMouseout="imgOut(${i})">`;
          msg += `<img src="${images[i]}" >`;
          msg += "</div>";
          if (i + 1 == Number(images.length / 2))
            msg += "</div><div class='flex'>";
        }
        const wrap = document.getElementById("wrap");
        wrap.innerHTML = msg;
      };
      const imgOver = (index) => {
        const span = document.getElementById(index);
        span.innerHTML = `<span onMousemove="imgOver(${index})">선택</span>`;
      };
      const imgOut = (index) => {
        const div = document.getElementById(index);
        div.innerHTML = `<img src="${images[index]}">`;
      };
    </script>
  </head>
  <body>
    <div id="wrap"></div>
  </body>
</html>

 

실행 결과

 

'javaScript' 카테고리의 다른 글

JAVASCRIPT 활용 (3)  (0) 2024.03.27
JAVASCRIPT 활용 (2)  (0) 2024.03.26
JAVASCRIPT 기초  (0) 2024.03.22

 

 

 

 

 

JAVASCRIPT란?

 

 

 

 

 

 

 

 

 

 

JAVASCRIPT 변수

 

 

 

 

 

 

 

 

 

 

JAVASCRIPT 기능 (1)

 사용 방법 : <script></script>

* 문자열을 사용할때는 ', " 둘다 사용 가능하다

console.log() : 콘솔창에 출력

typeof 변수명 : 변수의 자료형 확인

* console.log()로 출력한 내용은 F12 → Console을 통해 확인 가능

* 자료형 제한이 없다

* 에러가 발생해도 실행은 가능하다

<!DOCTYPE html>
<html lang="en">
  <head>
    <meta charset="UTF-8" />
    <meta name="viewport" content="width=device-width, initial-scale=1.0" />
    <title>Document</title>
  </head>
  <body>
    <script>
      let num = 100;
      let str = "문자열";
      let fl = 1.123;
      let bool = true;
      let arr = [1, 2, 3];
      let obj = { num: "홍길동", age: 20 };
      let test;
      console.log(num, typeof num);
      console.log(str, typeof str);
      console.log(fl, typeof fl);
      console.log(bool, typeof bool);
      console.log(arr, typeof arr);
      console.log(obj, typeof obj);
      console.log(test, typeof test);

      num = [1, 2, 3];
      console.log("--------");
      console.log("변경 후 : ", num, typeof num);
    </script>
  </body>
</html>

 

실행 결과

 

 

 

 

 

 

 

 

 

JAVASCRIPT 기능 (2)

prompt() : 문자열 형식으로 입력한 값을 받아옴

document.write : 현재 페이지에 출력

* `(backtick)을 사용하면 ${변수명}을 사용하여 출력 가능

// : 주석

변수 타입.toString() : 문자열로 형변환

(변수 타입+ "") : 문자열로 형변환

<!DOCTYPE html>
<html lang="en">
  <head>
    <meta charset="UTF-8" />
    <meta name="viewport" content="width=device-width, initial-scale=1.0" />
    <title>Document</title>
    <script>
      let name = "홍길동";
      let age = prompt("나이입력 : ");
      document.write("학생 이름 : " + name + "<br>");
      document.write("학생 나이 : " + age + "<br>");

      document.write(`이름 : ${name}님의 나이는 ${age}살 입니다<hr>`);

      console.log(`age : ${typeof age}`);
      let num = Number(age); //자료형 변환
      console.log(`num : ${typeof num}`);
      console.log(`num : ${typeof num.toString()}`);
      console.log(`num : ${typeof (num + "")}`);
    </script>
  </head>
  <body></body>
</html>

 

실행 결과

 

 

 

 

 

 

 

 

 

 

 

JAVASCRIPT  기능(3)

* let을 통해 변수를 만들면 다시 let을 통해 변수 생성 불가

* var를 통해 변수를 만들고, 다시 var를 통해 변수 생성 가능

const : 상수화(값 변경 불가)

<!DOCTYPE html>
<html lang="en">
  <head>
    <meta charset="UTF-8" />
    <meta name="viewport" content="width=device-width, initial-scale=1.0" />
    <title>Document</title>
  </head>
  <body>
    <script>
      let name = "홍길동";
      //let name = "김개똥";
      name = "김개똥";
      var age = 20;
      var age = 30;
      console.log(age, name);

      const key = "키키키키";
      //key = "값 변경 ?";
      document.write(key);

      const str01 =
        "안녕하세요\
      그래\
      반갑다";

      const str02 = `그래
      반가워
      서~!`;

      document.write(str01);
      document.write("<br><b>" + str02 + "</b>");
    </script>
  </body>
</html>

 

실행 결과

 

 

 

 

 

 

 

 

 

 

Quiz01

풀이 과정

<!DOCTYPE html>
<html lang="en">
  <head>
    <meta charset="UTF-8" />
    <meta name="viewport" content="width=device-width, initial-scale=1.0" />
    <title>Document</title>
  </head>
  <body>
    <script>
      let name = prompt("당신의 이름은?");
      let age = prompt("당신의 나이는??");
      let addr = prompt("당신의 주소는?");

      document.write(`
        <table border="1">
          <tr>
              <th>이름</th> <th>나이</th> <th>주소</th>
          </tr>
          <tr>
              <td>${name}</td> <td>${age}</td> <td>${addr}</td>
          </tr>
          <tr>
              <td>${name}</td> <td>${age}</td> <td>${addr}</td>
          </tr>
      </table>

        `);
      //   document.write("<table border=&quot;1&quot;>");
      //   document.write("<tr>");
      //   document.write("<th>내용1</th> <th>내용2</th> <th>내용3</th>");
      //   document.write("</tr>");

      //   document.write("<tr>");
      //   document.write(
      //     "<td>" + name + "</td> <td>" + age + "</td> <td>" + addr + "</td>"
      //   );
      //   document.write("</tr>");
      //   document.write("<tr>");
      //   document.write(
      //     "<td>" + name + "</td> <td>" + age + "</td> <td>" + addr + "</td>"
      //   );
      //   document.write("</tr>");
      //   document.write("</table>");
    </script>
  </body>
</html>

 

실행 결과

 

 

 

 

 

 

 

 

 

JAVASCRIPT 기능 (4)

Number(변수명) : 변수만 실수에서 정수로 변환

parseInt(변수명) : 변수와 값 둘다 실수에 정수로 변환

<!DOCTYPE html>
<html lang="en">
  <head>
    <meta charset="UTF-8" />
    <meta name="viewport" content="width=device-width, initial-scale=1.0" />
    <title>Document</title>
  </head>
  <body>
    <script>
      const num01 = prompt("첫번째 수 입력 : ");
      const num02 = prompt("두번째 수 입력 : ");
      console.log(typeof num01);
      console.log(num01 + num02);
      console.log(typeof Number(num01) + " : " + Number(num01));
      console.log(typeof parseInt(num01) + " : " + parseInt(num01));

      const su01 = 10,
        su02 = 3;
      document.write("10 / 3 => " + su01 / su02 + "<br>");
      document.write("Number 10 / 3 => " + Number(su01 / su02) + "<br>");
      document.write("parseInt 10 / 3 => " + parseInt(su01 / su02) + "<br>");
    </script>
  </body>
</html>

 

실행 결과

 

 

 

 

 

 

 

 

 

 

JAVASCRIPT 연산자

 

<!DOCTYPE html>
<html lang="en">
  <head>
    <meta charset="UTF-8" />
    <meta name="viewport" content="width=device-width, initial-scale=1.0" />
    <title>Document</title>
  </head>
  <body>
    <script>
      const num1 = 10;
      const num2 = 4;
      document.write(`${num1} / ${num2} = ${num1 / num2} <br>`);
      document.write(`${num1} / ${num2} = ${parseInt(num1 / num2)} <br>`);
      document.write(`${num1} * ${num2} = ${num1 * num2} <br>`);
      document.write(`${num1} % ${num2} = ${num1 % num2} <br><hr>`);
    </script>

    <script>
      let n1, n2;
      n1 = n2 = 5;
      n1 += 1;
      document.write(`${n1}<br>`);
      n1 -= 1;
      document.write(`${n1}<br>`);
      n1 *= n2;
      document.write(`${n1}<br>`);
      n1 /= n2;
      document.write(`${n1}<br>`);
      n1 %= n2;
      document.write(`${n1}<br><hr>`);

      n1 = "3";
      n2 = 3;
      document.write((n1 == n2) + "<br>");
      document.write((n1 != n2) + "<br>");
      document.write((n1 === n2) + "<br>");
      document.write((n1 !== n2) + "<br><hr>");

      document.write((true || false) + "<br>");
      document.write((true && false) + "<br>");
      document.write(!(true && false) + "<br><hr>");

      const x = 5;
      const y = 7;
      let result;
      result = x > y ? x : y;
      document.write("큰 값 : " + result + "<br>");
      result = x > y ? x - y : y - x;
      document.write(`큰 값 - 작은 값 : ${result}`);
    </script>
  </body>
</html>

 

실행 결과

 

 

 

 

 

 

 

 

 

 

Quiz02

 

풀이 과정

<!DOCTYPE html>
<html lang="en">
  <head>
    <meta charset="UTF-8" />
    <meta name="viewport" content="width=device-width, initial-scale=1.0" />
    <title>Document</title>
  </head>
  <body>
    <script>
      let n1 = prompt("수(짝/홀) 입력");
      let n2 = prompt("수(3의배수) 입력");
      let n3 = prompt("첫번째 수 입력");
      let n4 = prompt("두번째 수 입력");

      let result1 = n1 % 2;
      result1 == 0
        ? document.write(`${n1}는 짝수 입니다<br>`)
        : document.write(`${n1}는 홀수 입니다<br>`);

      let result2 = n1 % 3;
      result2 == 0
        ? document.write(`${n1}는 3의 배수 맞음 입니다<br>`)
        : document.write(`${n1}는 3의 배수 아님 입니다<br>`);

      let result3 =
        n3 > n4
          ? document.write(`${n3}이 ${n4}보다 크다<br>`)
          : document.write(`${n4}이 ${n3}보다 크다<br>`);
    </script>
  </body>
</html>

 

실행 결과

 

 

 

 

 

 

 

 

 

 

 

JAVASCRIPT   if문

<!DOCTYPE html>
<html lang="en">
  <head>
    <meta charset="UTF-8" />
    <meta name="viewport" content="width=device-width, initial-scale=1.0" />
    <title>Document</title>
  </head>
  <body>
    <script>
      let num = 10;
      let msg = "";
      if (num > 100) {
        msg = "100보다 크다";
      } else {
        msg = "100보다 작다";
      }
      document.write(msg + "<hr>");

      num = 5;
      if (num % 2 == 0) {
        msg = "num은 짝수이며<br>";
        msg += "2의 배수 입니다.";
      } else {
        msg = "num은 홀수이며<br>";
        msg += "2의 배수가 아닙니다.";
      }
      document.write(msg + "<hr>");

      const saveId = "aaa",
        savePwd = "aaa";
      const inputId = "aaa",
        inputPwd = "aaa";
      if (saveId === inputId) {
        if (savePwd === inputPwd) {
          msg = "인증 성공!!!";
        } else {
          msg = "비밀번호 틀림!!!";
        }
      } else {
        msg = "존재하지 않는 id 입니다.";
      }
      //alert(msg);
      document.write(msg + "<hr>");

      num = 70;
      msg = "";
      if (num > 100) {
        msg += `${num}은 100보다 큰 수<br>`;
      } else if (num > 80) {
        msg += `${num}은 80보다 큰 수<br>`;
      } else if (num > 60) {
        msg += `${num}은 60보다 큰 수<br>`;
      } else {
        msg += `${num}은 60보다 작은 수<br>`;
      }
      document.write(msg + "<hr>");
    </script>
  </body>
</html>

 

실행 결과

 

 

 

 

 

 

 

 

 

 

 

JAVASCRIPT   반복문

<!DOCTYPE html>
<html lang="en">
  <head>
    <meta charset="UTF-8" />
    <meta name="viewport" content="width=device-width, initial-scale=1.0" />
    <title>Document</title>
  </head>
  <body>
    <script>
      let num = 3;
      let msg;
      switch (num) {
        case 1:
          msg = "1과 같음";
          break;
        case 1:
          msg = "1과 같음";
          break;
        default:
          msg = "그 외의 값 입력";
          break;
      }
      document.write(msg + "<hr>");

      num = "그래";
      switch (num) {
        case "안녕":
          msg = "하세요";
          break;
        case "그래":
          msg = "반갑다";
          break;
        default:
          break;
      }
      document.write(msg + "<hr>");

      repeat = 5;
      msg = "";
      for (var i = 1; i < repeat; i++) {
        msg += `<h${i}>${i}번째 반복</h${i}>`;
      }
      document.write(msg + "<hr>");

      let sum = 0;
      num = 10;
      for (var i = 1; i <= num; i++) {
        sum += i;
      }
      document.write(sum + "<hr>");

      let evenSum = 0,
        oddSum = 0;
      sum = 0;
      num = 10;
      for (var i = 1; i <= num; i++) {
        sum += i;
        if (i % 2 == 0) {
          evenSum += i;
        } else {
          oddSum += i;
        }
      }
      document.write(`1 ~ 10 까지의 총 합 : ${sum}<br>`);
      document.write(`1 ~ 10 까지의 짝수 합 : ${evenSum}<br>`);
      document.write(`1 ~ 10 까지의 홀수 합 : ${oddSum}<br>`);
    </script>
  </body>
</html>

 

실행 결과

 

 

 

 

 

 

 

 

 

 

 

JAVASCRIPT   while문

<!DOCTYPE html>
<html lang="en">
  <head>
    <meta charset="UTF-8" />
    <meta name="viewport" content="width=device-width, initial-scale=1.0" />
    <title>Document</title>
  </head>
  <body>
    <script>
      let i = 1,
        sum = 0;
      while (i <= 10) {
        sum += i;
        i++;
      }
      document.write(sum + "<hr>");

      i = 1;
      while (i <= 5) {
        i++;
        if (i == 3) {
          console.log("3333333");
          continue;
          //break;
        }
        console.log(i);
        //i++;
      }
      i = 1;
      let msg = "";
      let bool = true;
      while (bool) {
        if (i == 3) {
          bool = false;
        }
        msg += i + ", ";
        i++;
      }
      document.write(msg);
    </script>
  </body>
</html>

 

실행 결과

 

 

 

 

 

 

 

 

 

 

Quiz03

풀이 과정 (1)

<!DOCTYPE html>
<html lang="en">
  <head>
    <meta charset="UTF-8" />
    <meta name="viewport" content="width=device-width, initial-scale=1.0" />
    <title>Document</title>
  </head>
  <body>
    <script>
      let num = prompt("커피 개수 입력");
      let result = 0;
      if (num > 10) {
        for (var i = 11; i <= num; i++) {
          result += 1500;
        }
        result += 2000 * 10;
      } else {
        result = 2000 * num;
      }
      document.write(`최종 금액 : ${result}원`);
    </script>
  </body>
</html>

풀이 과정 (2)

<!DOCTYPE html>
<html lang="en">
  <head>
    <meta charset="UTF-8" />
    <meta name="viewport" content="width=device-width, initial-scale=1.0" />
    <title>Document</title>
  </head>
  <body>
    <script>
      let num = prompt("usb 개수 입력");
      let result = 0;
      if (num > 100) {
        for (var i = 1; i <= num; i++) {
          result += 5000;
        }
        result *= 88 / 100;
      } else if (num > 10) {
        for (var i = 1; i <= num; i++) {
          result += 5000;
        }
        result *= 9 / 10;
      } else {
        result = 5000 * num;
      }
      document.write(`최종 금액 : ${result}원`);
    </script>
  </body>
</html>

 

실행 결과 (1)

 

실행 결과 (2)

 

 

 

 

 

 

 

 

 

 

Quiz04

 

풀이 과정 

<!DOCTYPE html>
<html lang="en">
  <head>
    <meta charset="UTF-8" />
    <meta name="viewport" content="width=device-width, initial-scale=1.0" />
    <title>Document</title>
  </head>
  <body>
    <script>
      let dan = prompt("단 입력");
      for (var i = 1; i <= 9; i++) {
        document.write(`${dan} * ${i} = ${dan * i} <br>`);
      }
    </script>
  </body>
</html>

 

실행 결과

 

 

 

 

 

 

 

 

 

 

Quiz05

 

풀이 과정

<!DOCTYPE html>
<html lang="en">
  <head>
    <meta charset="UTF-8" />
    <meta name="viewport" content="width=device-width, initial-scale=1.0" />
    <title>Document</title>
  </head>
  <body>
    <script>
      for (var i = 1; i <= 25; i++) {
        if (i % 5 == 0) {
          document.write(`${i} <br>`);
          continue;
        }
        document.write(`${i} , `);
      }
    </script>
  </body>
</html>

 

실행 결과

 

 

 

 

 

 

 

 

 

 

 

Quiz06

 

풀이 과정

<!DOCTYPE html>
<html lang="en">
  <head>
    <meta charset="UTF-8" />
    <meta name="viewport" content="width=device-width, initial-scale=1.0" />
    <title>Document</title>
  </head>
  <body>
    <script>
      for (var i = 1; i <= 5; i++) {
        for (var j = 1; j <= 5; j++) {
          document.write(`${i * j} `);
        }
        document.write("<br>");
      }
      document.write("<hr>");
    </script>

    <script>
      let num = 0;
      for (var i = 1; i <= 5; i++) {
        for (var j = 1; j <= 5; j++) {
          num++;
          document.write(`${num} `);
        }
        document.write(`<br>`);
      }
    </script>
  </body>
</html>

 

실행 결과

 

 

 

 

 

 

 

 

 

 

 

Quiz07

 

풀이 과정

<!DOCTYPE html>
<html lang="en">
  <head>
    <meta charset="UTF-8" />
    <meta name="viewport" content="width=device-width, initial-scale=1.0" />
    <title>Document</title>
  </head>
  <body>
    <script>
      // &quot;
      let f = prompt("아파트 층 수 입력");
      document.write(`<table border="1">`);
      for (var i = f; i >= 1; i--) {
        document.write(`<tr>`);
        for (var j = 1; j <= 4; j++) {
          document.write(`<td>`);
          document.write(`${i}0${j}호`);
          document.write(`</td>`);
        }
        document.write(`</tr>`);
      }
      document.write(`</table>`);
    </script>
  </body>
</html>

 

실행 결과

 

 

 

 

 

 

 

 

 

 

 

Quiz08

 

풀이 과정

<!DOCTYPE html>
<html lang="en">
  <head>
    <meta charset="UTF-8" />
    <meta name="viewport" content="width=device-width, initial-scale=1.0" />
    <title>Document</title>
  </head>
  <body>
    <script>
      while (true) {
        let num = prompt("수 입력(10 ~ 20사이의 수)");
        let result = 0;
        if (num >= 10 && num <= 20) {
          for (var i = 1; i <= num; i++) {
            result += i;
          }
          console.log(`입력 받은 수까지의 합 : ${result}`);
          break;
        } else {
          console.log("범위를 벗어났습니다. 다시...");
          continue;
        }
      }
    </script>
  </body>
</html>

 

실행 결과

 

'javaScript' 카테고리의 다른 글

JAVASCRIPT 활용 (3)  (0) 2024.03.27
JAVASCRIPT 활용 (2)  (0) 2024.03.26
JAVASCRIPT 활용  (0) 2024.03.25

+ Recent posts