:::: 개발 ::::/::: JSCRIPT :::

JavaScript Reference

nayha 2009. 12. 28. 14:10
       
JavaScript Reference
       
1.자바스크립트 기본문법
  [1] 기본형식
    1)
<script language="javascript">
스크립트내용
</script> 의 형식으로 스크립트를 기술한다
    2) 스크립트 블록은 주로 head태그나 body태그내에 기술한다
    3) 한문장이 끝날때마다 문장끝에 ;를 붙인다
    4) 변수는 대소문자를 구별하며 숫자로 시작해서는 안된다
변수 선언은 var 변수명=초기값; 형식으로 한다
예) var a=3;
    5) document.write구문 --> 문서내에 내용을 출력하는 구문
document.write구문내에서 문자는 ""로 감싸고 변수와 문자를 결합시는
+ 기호를 사용한다
예)
var a=3;
var b=2;
var c=a*b;
document.write("a*b=" + c);
=> 출력결과 a*b=3 즉 ""안에 쌓이 값은 문자로서그냥 출력된다
    6) 산술연산자
+더하기, -빼기, *곱하기, /나누기, %정수나머지
    7) 관계연산자
> 크다, >=크거나 같다, < 작다, <=작거나 같다, == 같다, != 같지않다
    8) 논리 연산자
!(부정) ,&&(그리고:둘다 참일때만 참),||(또는:둘중하나만 참이어도참)
    9)

함수선언과 호출
함수선언은 function 함수명(인자들){ 함수내용;} 의 형식으로한다
함수호출은 이벤트 핸들러에 의해 이벤트핸들러="함수명(인자들)" 의
형식으로 한다
예)
function myFun(a,b){
var c=a + b;
window.alert(c);
}


이런씩으로 코딩되었다면 body태그의 onload이벤트 핸들러(문서가 로드될때호출됨)에 의해 myFun() 함수가 호출되는데 그인자값으로 3과4
를 넘긴다 . a에는 3 b에는 4가 각각 입력된다
그리고 경고창으로 두개를 더한값(c) 7을 띄운다

       
  [2] 제어문
    1) for문 - 동일한 작업의 반복수행
      구조는
for(변수명=초기값;반복종료기준;증감값){
반복수행 내용;
}
의 형식으로 한다
예)
for(i=0;i<3;i++){
document.write("앗사
");
}
i++은 i=i+1 과 같은 의미임.
i--는 i=i-1 과 같은 의미임.
이구문은 i=0에서 시작해서 3보다 작은동안(즉i=0,1,2)총 3번 반복 i를 1식증가하여 앗사와 줄바꿈을 반복 출력한다
반복문에도 몇가지 더있지만 for만으로도 충분합니다...
       
    2) if else구문 - 조건에 따른 제어
      구조는
if(조건식){
조건식이 참일때 수행될문장;
}else{
조건식이 거짓일때 수행될 문장;
}

여기서 조건식이 거짓일때 수행할 문장이 없다면 else부분은 생략할수있다
예)
var a=3;
if(a>5){
alert("a는 5보다 큰값이다");
}else{
alert("a는 5보다 작은값이다");
}
여기서 a는 5보다 작으므로 조건식이 거짓이다 따라서 else이후의 문장이
수행되어 경고창으로 a는 5보다 작은값이다라는 메세지가뜨게 된다
if,else구문대용으로 삼항연산자 ? 기호 가있으나 처음부터 넘 많이 알려고하면 머리 아플것이므로 일부러 설명하지 않겠습니다...
꼭필요한 구문만 설명합니다
    3) switch case 구문 - 조건에 따른 제어
      구조는

switch(변수){
case(변수의 값1):
실행문1;
break;
case(변수의 값2):
실행문2;
break;
..... 계속 case더 있을수 있슴
default:
위조건중 하나도 일치하는것이 없을때 실행할 문장;
break;
}

예)
var a=5;
switch(a){
case(1):
alert("1이다");
break;
case(2):
alert("2다");
break;
case(3):
alert("3이다");
break;
default:
alert("a는 1,2,3은 아니다");
break;
} => 수행결과 a는 1,2,3은 아니다 라는 경고메세지가 뜨게 된다
       
  [3] 내장함수
    1) eval
      문자열을 숫자로 변환하여 계산결과를 반환한다
      그외에도 루프를 사용해야 하는 부분에서 다양하게 쓰인다
       
    2) parseInt
      문자열로 표시된 정수값을 숫자로 변환한다
      예)
var a="3";
var b="4"; //a,b는 따옴표로 둘러싸여있으므로 현재 문자로 취급됨
var c1=a+b; --> c1="34";가 입력된다
var c2=parseInt(a) + parseInt(b); --> parseInt에 의해
a,b는 숫자로 변환되며 + 기호는 덧셈으로 인식되어 c2에는 7이 입력된다
       
    3) parseFloat
      문자열로 표시된 부동소수를 숫자로 변환한다
       
  [4] 문자열 관련 함수
    1) length - 문자열의 길이
      예)
var str="abcdeabc";
var sLen=str.length; sLen에는 8이 입력된다
    2) charAt - 특정위치의 문자
      예)
var str="abcdeabc";
var myChar=str.charAt(2); => myChar에는 "c"가 입력된다
인덱스가 0부터시작하므로 0,1,2 즉 세번째 문자 c가 입력된다
    3) indexOf - 특정문자가 첫번째로 나타나는 위치
      예)
var str="abcdeabc";
var myIdx=str.indexOf("b"); => myIdx 에는 b가 처음으로 나타나는위치 1 이 입력된다
    4) lastIndexOf - 특정문자가 마지막으로 나타나는 위치
      예)
var str="abcdeabc";
var myIdx=str.lastIndexOf("b"); => myIdx에는 b가 마지막으로 나타나는 위치 6이 입력된다
    5) charCodeAt - 특정위치의 문자의 문자코드
      예)
var str="abcdeabc";
var myChar=str.charCodeAt(2); => 세번째 위치의 문자 "c" 의 문자코드인 99가 입력된다
    6) split - 문자를 특정문자를 기준으로 분리한다
      예)
var str="abc-dea-bc";
var partStr=str.split("-");
partStr에는 abc,dea,bc 가 입력된다
partStr[0]에는 abc가 partStr[1]에는 dea가 partStr[2]에는 bc가 입력된다
       
  [5] alert,prompt,confirm
    1) alert - 단순한 경고창을 띄운다.
      alert("메세지 내용");
       
    2) prompt - 사용자로부터 데이타를 입력받는 창을 띄운다
      구조 var 변수명=prompt("메세지내용","기본입력값");
예)
var n=prompt("숫자를 입력하세요","3"); => 숫자를 입력하세요라는 메세지와 기본적으로 입력값 3이 입력된 prompt창이 뜨고 사용자가 여기
숫자를 넣고 확인을 누르면 n에 그값이 입력된다
       
    3) confirm - 사용자에게 다음작업처리의 방향을 물어본다
      주로 if등의 조건제어문과 같이 쓰인다.
확인을 누르면 true반환하고 취소를 누르면 false를 반환한다
구조
if(confirm("확인받을 메세지")){
확인을 눌렀을때 실행할문장;
}else{
취소를 눌렀을때 실행할문장;
}
예)
if(confirm("당신머리는 큽니까?")){
alert("좋으시겠습니다 --;;");
}else{
alert("다행입니다");
}
       
       


 
2.Event Handler
     
  [1] 이벤트란?
    쉽게 설명해서 어떤웹페이지에서 일어나는 사건.일등을 말합니다.
예를들어 마우스를 클릭한다든가 더블클릭한다든가 브라우저를 닫는다든가 특정객체에 포커스를 가져간다든가 하는 모든것을 이벤트라 할수있습니다.
       
  [2] 이벤트 핸들러란?
    어떤 이벤트가 일어났을때 어떤처리를 해줄것인지를 정의하는 데 사용합니다
       
  [3] 이벤트 핸들러의 종류와 의미
    모든 이벤트 핸들러를 설명하지는 않습니다. 모든걸 한번에 다할려면 골깨집니다.
웹페이지를 만드는데 기본적으로 알아야 할것들만 설명하겠습니다.
       
    onLoad 문서가 로드될때
    onUnLoad 문서를 닫을때 다른 페이지로 이동하려 할때
    onFocus 문서에서 특정객체가 활성화 되었을때,특정입력박스에 포커스가 이동되었을때
    onBlur 문서에서특정객체가 비활성화 되었을때,
특정입력박스에서 포커스가 다른곳으로 떠날때
    onClick 버튼이나 이미지를 클릭했을때
    onDblClick 버튼이나 이미지를 더블클릭 했을때
    onChange 셀렉트박스나 파일 입력상자의 내용이 변경되었을때
    onMouseOver 특정객체위에 마우스를 올렸을때
    onMouseDown 마우스를 눌렀을때
    onMouseOut 특정객체위에 있던마우스가 영역밖으로 나갈때
    onMouseUp 마우스를 눌렀다가 놓았을때
    onKeyDown 키보드를 눌렀을때
    onKeyUp 키보드를 눌렀다 놓을때
    onReset 폼내용이 리셋버튼으로 초기화 될때
    onSubmit 폼내용이 전송되려고 할때
       
       

3.Object
   
  -객체(object)란?
    자바스크립트에서 객체란 브라우저창,이미지,입력양식등...웹문서속의 각각의 모든
항목들을 말한다고 보면 되겠습니다
  -속성이란?
    각 객체가 지닌 특성을 말합니다.
사용법 : 객체명.속성="속성값";
예) window.status="반가워여"; --> 브라우저 상태바에 반가워여라는 글자를 보입니다.
  -메서드란?
    각 객체에게 어떤 동작을하도록하는 명령어라고보면 됩니다.
예를들어 window객체의 close라는 메서드는 브라우저창에게 창을닫도록 명령합니다.
사용법 : 객체명.메서드(인자값);
예) window.alert("경고한다.밥무라"); --> 경고한다.밥무라라는 메세지로경고창을띄웁니다
     
  * 자바스크립트와 DHTML
    객체의 메서드나 속성중에서 근래에는 잘쓰여지지 않는 것들도 있습니다, style을
이용한 다이나믹html이 대체되어 쓰이는경우가 많이 있습니다.
예로 문서의 배경색깔을 동적으로 변경시키고자 할때 예전에는
document.bgColor="#ff00ff";이렇게 썼으나
요즘은 document.body.style.background="#ff00ff";로 쓰는경우도 많이 볼수있습니다.
     
     
  [1] window 객체
    속성 closed 브라우저 창이 닫혔는지를 체크
      opener 현재창이 새창일경우 현재창을열개한 브라우저창
      status 브라우저의 상태표시줄의 정보
      screenLeft 윈도우화면 좌측상단모서리에서 브라우저 상단까지의
x축 거리
      screenTop 윈도우화면 좌측상단모서리에서 브라우저 상단까지의
y축 거리
         
    메서드 alert 경고창을 띄운다
      blur 현재창을 최소화한다.포커스를 잃게 한다
      focus 현재창에 포커스를 준다,활성화 시킨다.
      moveTo(x,y) x,y좌표로 브라우저를 이동시킨다
      moveBy(dx,dy) 현재위치에서 dx,dy만큼 창을 이동
      resizeTo(w,h) 브라우저창 크기를 w(폭),h(높이)로 변경한다
      resizeBy(dx,dy) 브라우저창 크기를 dx,dy만큼 변경한다
      open 새창을 연다
      close 브라우저를 닫는다
      print 문서를 인쇄한다
      setTimeout 특정시간후에 특정작업을 호출합니다
      clearTimeout setTimeout으로 설정한 Timer를 해제합니다
         
  [2] document 객체
    속성 title 문서의 제목
      lastModified 마지막으로 수정된 날짜
      bgColor 문서의 배경색
      fgColor 문서의 글자색
      linkColor 링크의 색상
      alinkColor 링크 클릭시의 색상
      vlinkColor 방문했던 링크의 색상
         
    콜렉션 -문서에 존재하는 여러개의 이미지들이나 링크들 폼들에대한 정보를 배열형식
으로 저장하고있는 속성을 말합니다.
      forms 문서에 여러개의 폼이 있을경우 각폼들은 폼이름대신
document.forms[index]으로 접근할수있습니다
index는 0부터시작합니다.
      links 문서에서의 a href태그들의 정보를 가진 콜렉션
      images 문서에서의 모든 img태그들의 정보를 가짐
      applets 문서에서 여러개의 자바애플릿을 사용했을경우 모든애플릿들의 콜렉션
      embeds 문서에서 embed태그의 콜렉션
         
    메서드 write 문서에 내용쓰기
      writeln 문서에 줄바꿈을 포함한 내용쓰기
         
         
  [3] screen 객체
    속성 width 시스템 스크린의 폭(픽셀)
      height 시스템 스크린의 높이(픽셀)
      availWidth 시스템 스크린중 브라우저의 문서영역 폭
      availHeight 시스템 스크린중 브라우저의 문서영역 높이
         
         
  [4] navigator 객체
    속성 userAgent 브라우저 전체정보
ex) Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.0)
      appCodeName 브라우저 CodeName
ex) Mozilla
      appVersion 브라우저 Version
ex) 4.0 (compatible; MSIE 6.0; Windows NT 5.0)
      appName 브라우저 이름
ex)Microsoft Internet Explorer
      cookieEnabled 브라우저 쿠키이용 가능여부
반환값 : true/false
    메서드 javaEnabled 브라우저의 자바이용가능여부
반환값 : true/false
         
         
  [5] history 객체
    속성 length history목록(방문한사이트목록)의 갯수
         
    메서드 go(숫자) 지정숫자만큼 사이트이동
ex) go(2) 앞으로 2번째로 이동
      back 현재사이트 기준에서 이전사이트로 이동
      forward 현재사이트 기준에서 다음사이트로 이동
         
         
  [6] Event 객체
    속성 keyCode 이벤트를 일으킨 키보드의 키코드값
      altKey altKey를 눌렀는지의 여부
      ctrlKey ctrlKey를 눌렀는지의 여부
      shiftKey shiftKey를 눌렀는지의 여부
      button 마우스 오른쪽버튼을 눌렀는지
왼쪽버튼을 눌렀는지의 여부
      clientX 마우스 클릭시 브라우저기준의 x축거리
      clientY 마우스 클릭시 브라우저기준의 y축거리
    * srcElement 이벤트가 일어난 엘리먼트
         
         
  [7] Form 관련객체
    input type="text" 각값은 document.form이름.엘리먼트이름.value 로
접근할수 있다
    input type="password"
    input type="checkbox" 어떤 값이 선택되었는지는 루프를 돌며 checked속성이 true인지 false인지로 체크할수있다
    input type="radio"
    input type="file" 파일업로드를 위한 객체로서 파일값이 변할때
onChange이벤트 핸들러를 사용한다
    input type="button" submit이나 reset버튼의 제한된 기능에 다른여러기능을 추가적으로 스크립트로 제어할때는
input type=&q
반응형