Deeb
디비의 DB
Deeb
전체 방문자
오늘
어제
  • 분류 전체보기 (243)
    • Frontend (63)
      • HTML & CSS (27)
      • JavaScript (17)
      • jQuery (8)
      • React (6)
    • Backend (98)
      • Java (19)
      • JDBC (2)
      • Servlet & JSP (13)
      • Spring (17)
      • Project (0)
      • 개발 공부 (11)
      • 문제 풀이 (8)
      • Algorithm (1)
      • DataBase (0)
      • Oracle (18)
      • Error (8)
    • Knou (1)
    • Review (14)
    • TIL (33)
    • 삽질기록 (8)
    • deebtionary (5)

블로그 메뉴

  • 홈
  • 태그
  • 방명록

공지사항

인기 글

태그

  • 삭제
  • 클래스
  • DBMS
  • 에러
  • GIT
  • 리액트
  • Java
  • 2학기
  • 책
  • 배열
  • For
  • 한빛미디어
  • HTML
  • 방통대
  • 함수
  • 공부
  • 기초
  • 정의
  • DB
  • 후기
  • 서평단
  • js
  • CLASS
  • css
  • 추천
  • 다형성
  • 자바
  • alter
  • 정처기
  • 방송대

최근 댓글

최근 글

티스토리

hELLO · Designed By 정상우.
Deeb

디비의 DB

[Javascript] 1_개요, inline, internal, external
Frontend/JavaScript

[Javascript] 1_개요, inline, internal, external

2021. 11. 4. 17:40

✍script 언어

:  응용 프로그램의 동작을 사용자의 요구에 맞게 수행되도록 제어하는 용도의 언어

ex) 브라우저(응용프로그램)을 제어하는 Javascript

 

특징

  • 별도의 소스코드의 컴파일을 진행하지 않고 인터프리터(Interpreter)를 이용하여 소스코드를 한 줄씩 읽어 바로 실행한다.
인터프리터(Interpreter)
  • 소스코드 컴파일을 하지 않고 바로 수행한다
  • 컴파일에 소요되는 시간이 없지만, 프로그램 수행에 시간이 소요된다.

✍ JS (Javascript)

:  웹 브라우저에서 많이 사용하는 인터프리터 방식의 객체 지향 프로그래밍 언어

- ECMA  Script 표준을 따르는 대표적인 웹 기술이다.
 (ECMA : European Computer Manufacturers Association)

 

특징

  • JS는 우리가 알고있는 프로그래밍 언어의 기본 규칙이 적용되지 않는 경우가 많다. ex) 변수 자료형, 전역/지역(var, 클로저), HTML/CSS를 다루는 명령어

예제

<button type="button" onclick="">버튼1</button>

type="button"은 아무것도 아닌 모양만 있는 버튼이된다.

 

onclick : 해당 요소가 클릭 되었을 때

alert('버튼1이 클릭되었습니다.')

alert는 알리다는 의미로 ' '안에 있는 내용을 버튼을 클릭했을 때 팝업창으로 해당 문구가 뜬다.


script 태그

body 영역에 작성하고 javascript를 작성하는 영역이다.

<body>
	<button type="button" onclick="changeBg();">제목 배경색 바꾸기1</button>   
    <button type="button" id="btn1">제목 배경색 바꾸기2</button>

    <script>
        // Javascript를 작성하는 영역
        function changeBg(){
            document.getElementById("title1").style.backgroundColor = "black";
        }  /* 고전 방식 */

        document.querySelector("#btn1").addEventListener("click", () => {
            document.getElementById("title1").style.backgroundColor = "pink";
        }) /* 최신 방식 */
        
    </script>
</body>

최신 방식 해석

document 문서 연산자를 .을 통해 하위연산을 불러오는데

html에 문서에서 쿼리셀렉은 css방식으로 요소를 선택하는데 클릭이 되었을때 이벤트리스너를 추가한다 

- 문서에서 아이디가 title1인 것의 스타일을 backgroubdColor를 핑크로 바꾼다

고전 방식 / 최신 방식


inline 방식

: 태그에 직접 간단한 코드를 작성하여 실행하는 방법

form태그 내부에 작성된 버튼이 아닌 경우 type지정이 무의미하다.

form 태그 안에 있는데 타입을 지정하지않으면 자동으로 submit type으로 지정되는데 form 태그가 없다면 그냥 버튼이다 

 

⭐ console.log

: console에 출력 꼭 알아두기!

<button onclick="alert('버튼이 클릭되었습니다!!')">경고(알림창) 출력!</button>
<button onclick="console.log('개발자도구 console에 출력');"> console에 출력</button>
<br><br>
<div id="test1" onclick="console.log('div 버튼이 클릭되었습니다.')">div Button</div>


internal 방식

: HTML 문서 내부에(internal) script 태그를 선언하여 JS 코드를 작성하는 방식

script  태그는 head, body 태그에 작성할 수 있다.

 

 

함수(function == 기능(java의 method와 비슷))

        // 함수는 선언, 정의, 호출 세 가지로 구분된다.

 

 

  function 함수명(매개변수) --> 함수 선언 기본 형식

 

 

예제 1) 매개변수 없는 함수

<body>
	<button onclick="testFn();">함수 호출 버튼</button>
                    <!-- 함수 호출 -->
</body>
<script>
  function testFn(){ //함수 선언
     //함수 정의
     for(let i=0; i<10; i++){
         console.log(i);
      }
   }
</script>

예제 2) 매개변수 있는 함수

<body>
	<button onclick="add(10,20);">더하기 버튼</button>
</body>
<script>
    //매개 변수가 있는 함수 (자료형은 쓰지 않는다)
    function add(num1, num2){
    	alert("두 수의 합 : " + (num1+num2) );
    }

</script>


external 방식

: 외부에 별도로 자바스크립트 코드만을 작성하는 파일

*.js 파일을 생성하여 연결하는 방법

 

 

internal 방식

<body>
    <button onclick="sample1();">sample1 함수 호출</button>
    <button onclick="sample2();">sample2 함수 호출</button>

    <script src="js/02_JS작성방식.js"></script>
</body>

➡ css는 <head> 태그에서 link를 통해 연결했다면 js는 보통 script 태그는 body태그 제일 마지막 부분에 작성한다.

➡ external 방식으로 js 파일 연결

 

external 방식

// <script>태그 내부라고 생각하고 작성하면 된다.

function sample1(){
    alert("sample1 함수가 호출된다.")
}

function sample2(){
    console.log("sample2 함수가 호출된다.")
}

 

 

 

 

 

반응형
저작자표시 비영리 변경금지 (새창열림)

'Frontend > JavaScript' 카테고리의 다른 글

[Javascript] 07 이벤트, 이벤트리스너,이벤트핸들러 /인라인·고전·표준모델  (0) 2021.11.16
[Javascript] 문자열,숫자,형변환,연산자  (0) 2021.11.15
[Javascript] 변수 선언 , 자료형  (0) 2021.11.11
[Javascript] 요소접근방법  (0) 2021.11.08
[Javascript] 데이터 입출력  (0) 2021.11.05
    'Frontend/JavaScript' 카테고리의 다른 글
    • [Javascript] 문자열,숫자,형변환,연산자
    • [Javascript] 변수 선언 , 자료형
    • [Javascript] 요소접근방법
    • [Javascript] 데이터 입출력
    Deeb
    Deeb

    티스토리툴바