### JavaScript 기본 Tutorial
자바스크립트 사용법
<script> 여기에 자바 스크립트 코드를 넣는다. </script>
innerHTML : HTML 요소로 작성할 때 사용
document.write() : HTML 출력할 때 사용
window.alert() : 경고 메세지창을 띄울 때 사용(window 생략가능)
console.log() : 브라우저 콘솔을 사용할 때 사용(디버깅)
document.getElementById("id") : HTML 요소에 엑세스할 때 사용한다.
window.print() : 현재 창의 내용을 실제로 출력할 수 있다.
자바스크립트 함수
function fname(param){}
-> 위 구문과 같은 형태로 만들 수 있다.
변수의 속성 정의
var person = {
firstName: "John",
lastName: "Doe",
age: 50,
eyeColor: "blue"
};
->이런 식으로 변수의 속성을 정의할 수 있다.
사용시 : objectName.propertyName 또는 objectName["propertyName"] 을 사용하여 호출할 수 있다.
ex) person.firstName 또는 person["firstName"]
Event
<element event="Javascript" 의 형식으로 이벤트를 줄 수 있다.
event 예시
onchange : element가 바뀌었을때
onclick : element를 클릭했을 때
onmouseover : 마우스를 element 위에 올렸을때
onmouseout : 마우스가 element에서 멀어졌을때
onkeydown : 키보드를 눌렀을 때
onload : 브라우저가 페이지 로드를 완료했을 때
문자열
문자열 찾기
문자열.indexOf("찾을거") 을 하면 찾는 문자열이 시작되는 위치(인덱스)를 반환한다.
문자열.lastIndexOf("찾을거") 을 하면 가장 뒤에서부터 문자열이 시작되는 위치(인덱스)를 찾아 반환한다.
-> 둘 다 찾을 수 없는 경우 -1을 반환한다.
문자열.search("찾을거) 을 하면 찾는 문자열이 시작되는 위치를 반환한다.
slice(start,end) : 문자열의 일부를 추출하고, 추출한 부분으로 바꾼다.
substring(start, end) : slice와 비슷, 두 번째 파라미터를 생략하면 첫 번째 파라미터부터 나머지를 분리해서 분리한 부분으로 바꾼다.
substr(start, end) : slice와 비슷, 두번째 파라미터는 추출할 부분의 길이를 의미한다.
toUpperCase() : 문자열을 대문자로 변환한다.
toLowerCase() : 문자열을 소문자로 변환한다.
charAt(index) : 지정된 인덱스 위치에 있는 문자를 반환한다.
charCodeAt() : 지정된 인덱스 위치에 있는 문자의 유니코드를 반환한다.
number method
toString() : 숫자를 문자열로 변환한다.
toExponential() : 지수 표기법을 사용하여 숫자를 반올림하고, 쓴 문자열을 반환한다. 파라미터는 소숫점 뒤 자리수를 의미한다.
toFixed() : 지정된 소수 자릿수로 쓴 숫자로 문자열을 반환한다.
toPrecision() : 지정된 길이로 슨 숫자로 문자열을 반환한다.
ValueOf() : 숫자를 숫자로 반환한다.
변수를 숫자로 변한하는 방법
Number() : 날짜도 1970.1.1 이후의 밀리세컨드 수를 반환할 수 있다.
parseInt() : 정수를 반환하고, 첫 번째 수만 반환한다.
parseFloat() : 소수를 반환하고, 첫 번째 수만 반환한다.
Array method
toString() : 배열을 쉼표로 구분된 문자열로 변환한다.
join("구분할문자") : 배열을 지정한 구분할 문자로 구분된 문자열로 변환한다.
pop() : 배열에서 마지막 요소를 제거한다.
push() : 배열 끝에 새로운 요소를 추가한다.
shift() : 첫 번째 배열 요소를 제거하고, 뒤에 요소들을 앞 인덱스로 이동한다.
splice(p1,p2) : 배열의 새 항목을 추가할 수 있다. p1은 추가할 위치, p2는 제거할 요소 수를 의미한다.
slice(p) : 배열의 일부(p부터)를 새로운 배열로 만든다. 소스 배열에서 요소를 제거하지 않는다. 파라미터를 2개 넣으면 시작 인덱스와 끝 인덱스를 의미한다.
sort() : 배열을 알파벳순으로 정렬한다.
reverse() : 배열을 거꾸로 뒤집는다.
날짜
getFullYear() : 4자리 연도를 반환한다.
getMonth() : 0-11로 달을 반환한다.
getDate() : 1-31 로 일을 반환한다.
getHours() : 0-23으로 시를 반환한다.
getMinutes() : 0-59로 분을 반환한다.
getSeconds() : 0-59로 초를 반환한다.
getMilliseconds() : 0-999로 밀리세컨드를 반환한다.
getTime() : 1970.1.1부터의 밀리세컨드를 반환한다.
getDay() : 0-6 으로 요일을 반환한다.
setDate() : 1-31로 날짜를 설정할 수 있다.
setFullYear() : XXXX 형태로 연도를 설정할 수 있다.
setHours() : 0-23으로 시를 설정할 수 있다.
setMilliseconds() : 0-999로 밀리세컨드를 설정할 수 있다.
setMinutes() : 0-59로 분을 설정할 수 있다.
setMonth() : 0-11로 월을 설정할 수 있다.
setSeconds() : 0-59로 초를 설정할 수 있다.
setTime() : 1970.1.1부터의 밀리세컨드를 설정할 수 있다.
타입 변환
toString() : 숫자 등을 문자열로 바꾼다.
Number() : 문자열을 숫자로 변환할 수 있다.(빈 문자열은 0, 다른 것은 NaN 으로 변환된다)
parseFloat() : 문자열을 소수로 변환한다.
parseInt() : 문자열을 정수로 변환한다.
정규식
:검색 패턴을 형성하는 일련의 문자.
/pattern/modifiers;
modifiers
i : 대소문자를 구분하지 않는다.
g : 전체에서 일치하는 모든 문자를 찾는다.
m : 여러 줄 매칭을 수행한다.
"use strict" (엄격 모드)
선언하지 않고 객체를 사용할 수 없다.
변수 또는 객체를 삭제할 수 없다(delete 못함)
function도 삭제할 수 없다.
매개변수를 이중사용 할 수 없다.
8진수를 사용할 수 없다.
read-only 와 get-only 속성에 쓰는 것은 허용되지 않는다.
삭제 불가능한 속성은 삭제할 수 없다.
argument 와 eval은 변수 이름으로 사용할 수 없다.
with() 문은 사용할 수 없다.
보안상 이유로 eval()이 호출된 범위에서는 변수를 쓸 수 없다.