차이

문서의 선택한 두 판 사이의 차이를 보여줍니다.

차이 보기로 링크

양쪽 이전 판이전 판
다음 판
이전 판
tech:javascript [2019/12/22 11:57] – [자료형] 59.15.69.74tech:javascript [2022/10/21 00:25] (현재) – [예제] V_L
줄 174: 줄 174:
 </file> </file>
  
 +자바스크립트의 변수에는 값, 객체 뿐아니라 함수도 할당할 수 있다. 이런 형식은 선언문이 아니라, 일반 수식과 같은 표현식 이므로, 끝에 ; 를 붙여준다. 
 +
 +
 +  var add = function (a,b){ return a+b; };
 +
 +다른 언어같으면 function 다음에 함수 이름이 오겠지만, 변수이름이랑 함수이름이 같으므로, 함수이름은 생략한다. 
 +
 +호출은 그냥 변수 이름으로 한다.
 +  add(10,12);
 +
 +객체 안에 속성으로 변수를 담을 수 있으므로, 객체 안에 함수를 담을 수도 있다. 
 +
 +  var test = {};
 +
 +  test.add = function(a,b){return a+b;};
 +
 +객체를 만들면서 함수를 정의할 수도 있다. 
 +
 +  var test = {
 +      add: function(a,b){return a+b;}
 +  };
 +
 +
 +  
 +  
 ====문자열==== ====문자열====
  
줄 179: 줄 204:
   - escape chars 는 \ 를 이용한다.   - escape chars 는 \ 를 이용한다.
   - string은 array처럼 string[ position ] 으로 한 char에 접근 가능하다.   - string은 array처럼 string[ position ] 으로 한 char에 접근 가능하다.
 +
 +====함수====
 +
 +
 +<file javascript>
 +function add(a,b)
 +{
 +   // do …
 +  return a+b;
 +}
 +</file>
 +
 +  - var 를 이용한 정의는 LOCAL이 되며, 해당 function 에서만 접근 가능하다.
 +  - function 밖에서 정의된 녀석은 GLOBAL이 된다. 스크립트 어디서든 접근할 수 있다.
 +  - 만약 변수정의를 하지 않은 변수에 바로 값을 대입하면 자동으로 GLOBAL로 인식된다. ( function 안에서 수행되도 말이다. )
 +
 +
  
 ====배열==== ====배열====
줄 184: 줄 226:
  array 정의 및 값 설정은 다음과 같은 세 가지 방법이 있다.  array 정의 및 값 설정은 다음과 같은 세 가지 방법이 있다.
  
-  -  var cars = new Array(); \\     cars[0] = "Volvo"; \\     cars[1] = "BMW"; +  var cars = new Array();  
-  var cars = new Array("Volvo", "BMW" ); +    cars[0] = "Volvo";  
-  var cars = ["Volvo", "BMW"];+    cars[1] = "BMW"; 
 +     
 +  var cars = new Array("Volvo", "BMW" ); 
 +  var cars = ["Volvo", "BMW"]; 
 + 
 +배열안의 요소는 대괄호 []를 이용해서 접근한다.  
 + 
 +배열의 요소는 변수, 객체, 함수 등이 될 수 있다.  
 +배열에 함수를 넣고 실행하는 것은 다른 언어에서는 볼 수 없는 특성이다.  
 + 
 +  var car[2]=function(a,b) { return a+b;}; 
 +  console.log( car[2](10,11) ); 
 + 
 + 
 +배열의 요소에 하나씩 접근하는 방법은 for 반복문을 사용하면 된다.  
 + 
 +  for (var i=0; i< cars.length; i++) {  
 +      console.log( car[i] ); 
 +  } 
 + 
 +forEach **메소드**를 사용할 수도 있다.  
 +메소드 이므로, 파라메터로 작동할 함수를 전달한다.  다른 언어와 약간 차이가 있다.  
 + 
 +  cars.forEach( function(item,index) {  
 +  console.log( item ); 
 +      } 
 +  ) 
 + 
 +index는 각 요소의 인덱스 값이다. 
 + 
 +배열의 메소드 
 + 
 +| push() | 끝에 추가 | 
 +| pop() | 맨끝의 요소 삭제 | 
 +| unshift() | 앞에 추가 | 
 +| shift() | 맨앞의 요소 삭제 | 
 +| splice() | 배열의 요소 삭제, 추가 | 
 +| slice() | 배열의 일부 요소를 복제 | 
 + 
 +배열의 중간에 있는 요소를 지우려면 delete 키워드를 사용한다. (메소드 아님) 
 + 
 +  delete cars[1]; 
 +이 경우 요소는 삭제되지만, 공간은 그대로 있기 때문에 undefined 요소가 생기고, 배열의 길이도 그대로이다.  
 +아예 공간까지 없애버리는 splice() 메소드를 사용하면 된다.  
 + 
 +  cars.splice(1,2); // 인덱스1번 요소와 그 다음 요소를 삭제한다 
 + 
 +  car.splice(1,0,"현대"); // 1번 자리에 추가 
 + 
 + 
  
 =====객체===== =====객체=====
줄 369: 줄 461:
   document.write("Hello \   document.write("Hello \
   World!");   World!");
- 
-====함수==== 
- 
- 
-<file javascript> 
-function functionname() 
-{ 
-   // do sth… 
-} 
-</file> 
- 
-  - var 를 이용한 정의는 LOCAL이 되며, 해당 function 에서만 접근 가능하다. 
-  - function 밖에서 정의된 녀석은 GLOBAL이 된다. 스크립트 어디서든 접근할 수 있다. 
-  - 만약 변수정의를 하지 않은 변수에 바로 값을 대입하면 자동으로 GLOBAL로 인식된다. ( function 안에서 수행되도 말이다. ) 
  
  
줄 516: 줄 594:
 http://www.w3schools.com/js/js_examples.asp http://www.w3schools.com/js/js_examples.asp
  
-^  누구나 수정하실 수 있습니다. [[http://vaslor.net/syntax|위키 사용법]] 참고하세요.  ^ 
- 
- 
-  
  
  
 +[[javascript post]]