[ JavaScript ]
- 인터프리터 언어 ( Script )
: 컴파일 안하고 한줄한줄 실행
- 동적 타입 언어
: 변수 타입이 동적으로 바뀐다. (미리부터 정해져있지 않음)
var i = 100;
var k = "javascript";
- var 같이 통용되는 변수타입 하나로 사용
- ECMA : Script 언어 표준문법
(JavaScript 도 에크마 표준 적용)
ecma5 / 6(최신버전)
- 6버전에 들어와 새로 도입된 기술들이 있고, 많이 쓰이는 추세이다.
- JS 는 기본 웹클라이언트 기술
=> 웹 브라우저는 자바스크립트 실행기능을 내장
- JS 에서 서버 실행 기술까지 사용하는 최신기술 => Node.JS
< Visual Studio Code + Node.js 서버 >
이 조합만으로도 웹개발 가능 ( 최신추세 )
< Java + Tomcat 서버 >
기본 조합 ( 아직 많이 사용됨 )
Node.js 에 편리한 기능이 많다. 익혀둘 필요가 있다! (다음은 너다)
< JS 오류 확인 >
[ 크롬 - 메뉴 - 도구더보기 - 개발자도구 ]
( ctrl + shift + i )
- 잘 이용해야함!
< Java 와 관계 >
: 일단 모르는 사이라고 잡아뗀다.
- 이름만 비슷하지 딱히 관계있는 사이는 아니라고 한다.
- 하지만 까보면 거의 형제나 다름없다. (기본적 문법구조가 비슷함)
1. 대소문자 구분 똑같음
2. ; 세미콜론 구분자 사용 똑같음
( 엔터로도 구분이 되긴 하지만 ; 권고 )
3. 주석 // /* */ 똑같음
4. 공백 하나만 인정 똑같음
5. 조건문 if문 똑같음
switch( 변수 )
- 스위치문 변수에 모든타입 변수 들어갈 수 있다
6.반복문
for문 while문 똑같음
(변수타입만 script 용으로 해주면 됨)
7.이동문
break continue 똑같음
return; 이렇게만 끝내는건 없다
return 값; 이렇게는 사용 가능
자바 - 클래스.멤버변수 / 클래스.메소드
자바스크립트 - 객체.property / 객체.함수
등등, 기본적인 문법구조를 거의 비슷하게 잡고간다고 생각하면서,
"다른 부분"들을 중점적으로,
추가적인 기능들을 중점적으로 해서 익혀나가면 좋을 것 같다.
< 비교 연산자 >
== : 값만 같으면 된다. Type 무시
=== : 값 + Type 까지 같다
( != / !== )
let str1 = "java";
let str2 = new String("java");
write( (str1 == str2) + b ); => true
write( (str1 === str2) + b ); => false (String - Object)
100 == "100" => true
100 === "100" => false
< HTML 에서 사용 >
- <script> 태그로 </script> 사용
- <head>에 있어도 되고, <body>에 있어도 실행은 됨
( 섞여있어도 실행은 된다. )
=> 기본적으로, 변수들이 정의되고, 태그에 id 들이 잡힌 후에
그 값들을 이용해서 Script 가 짜여지기 때문에,
순서상
<body> 부의 </body> 끝부분쪽에 모아서 사용하는 방식이 이용된다.
- 혹은 onload함수 사용하면 순서 신경쓰지 않아도 된다.
window.onload = start;
function start( ){ }
=> 화면의 모든 HTML 요소 load 되면, 그때 start 호출해서
start 함수안에 넣어둔 원하는 함수 실행하는 방식
( - 순서 안전성 보장 )
< JavaScript 전용파일 사용 >
[ JavaScript 전용 파일 => ~.js 파일 ]
js파일
var j = 20;
alert(j);
<script src=" . js"> </script>
이렇게 불러들여서 실행 가능
- 불러들인 위치에 따라서 실행 순서 결정
'Back to the JavaScript' 카테고리의 다른 글
타이머 만들기 / setInterval / setTimeout /clearInterval (0) | 2022.07.27 |
---|---|
이벤트 처리 onclick 방식 / DOM 방식 (0) | 2022.07.27 |
웹브라우저 입출력 write / alert / prompt / confirm (0) | 2022.07.27 |
String / Math / 기타 내장된 공짜 함수들 (0) | 2022.07.27 |
JS 변수선언 / var (hoisting) / let / const (0) | 2022.07.27 |