방법1 (HTML 내 포함)
1. HTML 파일 <body> 마크업 안 가장 아래
2. <script> 마크업을 이용하여 JS 코드 작성
방법2 (외부 파일)
1. JS 파일 생성 후 코드 작성
2. HTML 파일 <body> 마크업 안 가장 아래
3. <script src="JS파일경로"></script>
<!-- 주석내용 -->/* 주석내용 *//* 여러 줄 주석 */// 한 줄 주석[자료, 자료, 자료]{속성명: 자료, 속성명: 자료}예시 생각해보기
[10, 'A', "사과", 3.14] → 자료 5개 (10, 'A', "사과", 3.14, [])
[ { 이름: "이겨레" }, 'A', 3.14 ] → 자료 5개 ("이겨레", {}, 'A', 3.14, [])
키워드 : [], {}, console, Number, String, if, for 등
let 변수명 = 자료; (수정 가능)const 변수명 = 자료; (수정 불가)console.log(자료) : 브라우저 console 탭alert(자료) : 브라우저 알림 창confirm("메시지") : 확인/취소 → true/false 반환let 변수명 = confirm("메시지");prompt("메시지") : 텍스트 입력 → 입력값 반환let 변수명 = prompt("메시지");"문자열" + 변수 + "문자열"`문자열 ${변수} 문자열`\\ : 백슬래시\' : 작은따옴표\" : 큰따옴표\n : 줄바꿈\t : 탭let/const 변수명 = [자료, 자료]변수명 또는 변수명[인덱스]변수명[인덱스] = 새로운값변수명.length자주 쓰는 배열 함수
push() : 요소 추가splice(index, 개수) : 요소 삭제indexOf(값) : 인덱스 반환, 없으면 -1"문자열" * 1 → 숫자형"문자열" + 숫자형 → 문자열Number() : 문자열 → 숫자parseInt() : 문자열 → 정수parseFloat() : 문자열 → 실수String() : 기타 → 문자열Boolean() : 문자열 → 논리형+ - * / %+> < >= <= == != === !==&& || != += -= *= /= %=++, --조건 ? 참 : 거짓for(let i=0; i<배열.length; i++)continue, break, 무한루프 for(;;)class / 클래스 없는 객체 : { }[ ] : 인덱스, 순서 있음{ } : 속성명, 순서 없음let 변수명 = { 속성명: 자료 }변수명.속성명 또는 변수명['속성명']Object.keys(), Object.values(), Object.entries()변수명.속성명 = 자료delete 변수명.속성명'속성명' in 변수명[ {}, {}, {} ]변수명[인덱스].속성명{ } 안에서만 사용 가능{ } 안에 코드 정의function 함수명(매개변수){ return 반환값; }함수명(인자값); let 결과 = 함수명();<마크업 이벤트속성명="함수명()">querySelector(), querySelectorAll().innerHTML, .value, .style, .src, .remove().classList.add/remove/toggle/contains().files[0], URL.createObjectURL()new Date()getFullYear(), getMonth() +1, getDay(), getDate()sessionStorage, localStorage.setItem('key', 값).getItem('key').removeItem('key').clear()