728x90
반응형

 

function - object자료형

 
- JavaScript Object = java Map = JSON방식

SYNTAX

 

 

a
<!DOCTYPE html>
<html lang="en">
  <head>
    <meta charset="UTF-8" />
    <title>Object자료형</title>
  </head>
  <body>
    <h2>JavaScript functions</h2>
    <p>버튼을 클릭해보세요.</p>
    <p id="demo"></p>
    <button onclick="person.fullName()">클릭</button>

    <script>
      /*
        javascript object = java Map = json방식
        형식 : {키 : 값 , 키 : 값, ....}
        */
      // this키워드 : 함수의 소유자를 의미함.
      // 이 스크립트 에서는 this가 person객체가 됨.
      // object객체의 키와 요소값에 접근하는 방법
      // Object.keys(오브젝트객체명) 키명만 가져오기 => 키만 배열형식으로 반환
      // 요소값 가져오기
      // 1. 오브젝트객체명.키명
      // 2. 오브젝트객체명['키명'] => 키명은 반드시 문자열값으로 기술할 것
      const person = {  //(key, value) object형식으로 가져옴 java-map 유사
        firstName: "John",
        lastName: "Doe",
        id: 5566,
        // object객체의 값으로 존재하는 함수
        fullName: function () {
          document.getElementById("demo").innerHTML =
            this.firstName + " " + this.lastName;
        },
      };

      document.write(person["firstName"], ", ", person.lastName);
    </script>
  </body>
</html>​

 

function - event handler

 
- 웹문서내에서 어떠한 행위가 일어날 때 발생되는 기능을 제어하는 함수.
- 해당 이벤트가 발생일 될때 함수를 실행시킨다.
 
onload : 페이지가 로딩될 때, 즉시실행
 [window].onload = function (){
            ~~~~;
        };
 
onchange : 값이 변경되었을 때
[값이 변경되는 대상 태그].onchange = function (){
            ~~~~;
        };
 
onclick : 페이지 내 마우스를 클릭했을 때
window.onclick = function (){
            ~~~~;
        };

<태그 onclick="   ">
 
onsubmit : submit실행할 때
<form
onsubmit="   "
 

 

event handler
<!DOCTYPE html>
<html lang="en">
  <head>
    <meta charset="UTF-8" />
    <title>Document</title>
    <script>
      /*
        이벤트핸들러 함수란 :
        웹문서내에서 어떠한 행위가 일어날 때 발생되는 기능을 제어하는 함수.
        -- 해당 이벤트가 발생일 될때 함수를 실행시킨다.
        onload : 페이지가 로딩될 때
        onchange : 값이 변경되었을 때
        onclick : 마우스를 클릭했을 때

        [window].onload = function (){
            ~~~~;
        };
        
        [값이 변경되는 대상 태그].onchange = function (){
            ~~~~;
        };

        */
      // window.onload = function() {자바스크립트 코드들; ...;}
      // 웹 페이지가 로딩되자마자 실행
      // 즉시실행함수
      window.onload = function () {
        //이벤트 핸들러 함수 선언(정의)
        var i = 3;
        document.write(i + "의 제곱은 " + (i * i));
      };
      //이벤트(load)에 의해 호출(실행)
    </script>
  </head>
  <body></body>
</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>
    <style>
        select{padding:2px;}
    </style>
    <script>
        window.onload = function() {
            alert('즉시실행');
            // HTML엘리먼트에 이벤트 핸들러 지정
            // onclick: 해당 input버튼 요소에 onclick속성 및
            // 연결될 test()함수 지정하기
            document.getElementById("btn").onclick=test;
            // document.getElementById("btn").onclick=test(); //test(); 바로 실행됨

            // onchange : 해당 select요소에 onchange속성 및 연결될 test2()함수 지정하기
            document.getElementById("sel").onchange = function (){
                console.log('this', this);
                test2(this.value);
            };
        };
        function test() {alert("사용자 정의 함수");}

        function test2(email) {
            // HTML의 특정 엘리먼트를 객체로 접근
            var text = document.getElementById("email2");
            // 특정 객체의 value속성에 값을 지정
            text.value=email;
        }
    </script>
</head>
<body>
    <p><input type="button" value="테스트" id="btn"></p>
    <form>
    <!-- <form action="function12_event02.html" method="get"> 
        default값으로 action, method 생략가능-->
    
    <p>이메일 <input type="text" id="email1" name="email1">@
    <input type="text" id="email2" name="email2">
    <select id="sel" name="sel">
        <option value="">직접입력</option>
        <option value="naver.com">네이버</option>
        <option value="gmail.com">구글</option>
        <option value="daum.net">다음</option>
    </select>
    </p>
    <input type="submit" value="전송" >
</form>
</body>
</html>

728x90
반응형

'[JS]' 카테고리의 다른 글

[JS] 배열 방 삭제  (0) 2024.02.29
[JS] 즉시실행함수, preventDefault, addEventListener  (0) 2024.02.29
[JS] toString(), arrow()  (0) 2024.02.28
[JS] function2, arguments  (0) 2024.02.28
[JS] function1  (0) 2024.02.28

+ Recent posts