- 배열 (Array) : [1,2,3,4,5,6] 과 같이 [ ] 대괄호로 선언
[ ] 안에 값들은 '요소'라고 표현
** push() 메소드의 경우 기존 배열에 값 추가 가능 (splice는 제거 메소드)
-> var arr = [1,2]; //배열 선언
arr.push(3); //배열에 요소 추가
arr.push(4);
-> arr = [1,2,3,4]
- 반복문
1> While 반복문 : 불표현식이 true, false 로 바뀌는 시기에 반복문 종료
while (불표현식) { <문징> };
2> do while 반복문 : while 반복문과 다르게 문장의 실행이 한번 먼저 실행
do { <문장> } while (불표현식);
3> for 반복문 : 초기식과 종결식으로 구성
for(초기식 ; 조건식; 종결식) { 문장 };
4> for in 반복문 : 단순 for 반복문을 동일한데 간단히 표현 (for (인덱스 in 배열) 구조)
for (var i in array) { }; = for(var i=0; i<array.length; i++) { };
- 함수 : 코드 집합의 자료형
function exam(){}; // 이름있는 함수
var 함수 = function() { } ; // 이름없는 함수
ex> var 함수 = function() {
var out = prompt('이름을 입력해주세요!', '문자');
alert(out);
};
=> JavaScript 에서 <script> </script> 안에서 선언할때 이름있는 함수는 스크립트 호출 시 먼저 사용된다.
두번째 줄에 선언되어도 첫번째 줄에 이름없는 함수가 선언되어 있으면 이름 없는 함수가 실행이 나중에 된다.
- 매개변수 : 함수 호출할 때 함수에서 정의한 필요한 값 (Input 값)
필요한 매개변수보다 많거나 적어도 사용 가능
ex>
function <함수이름> (<매개변수>,<매개변수>.....) {
(함수코드)
return (리턴값);
}
- 콜백함수 : 매개변수로 전달 함수
함수자체를 매개변수로 보내서 함수를 실행하게 한다.
ex> 일반적인 형태
function callTest(callback) {
for(var i = 0 ; i<10; i++) {
callback();
}
}
// 함수 자체를 넣어서 콜백함수 호출
callTest(function() {alert("테스트입니다."); });
- 내장함수
1> 타이머 함수
- setTimeout(function, milisecond) : 특정 시간 후에 함수 한번 실행 (1000 이면 1초)
- setInterval(function, milisecond) : 특정 시간마다 함수 반복 실행
- clearTimeout(id) : set timeout 중지
- clearInterval(id) : set interval 중지
2> 인코딩 & 디코딩 함수
# 인코딩 : 문자를 통신에 사용하기 위해 부호화
# 디코딩 : 문자를 원래대로 되돌리는 것
- escape (); 영문 알파벳, 숫자, 일부 특수문자 제외하고 모두 인코딩 (1byte 문자 -> '%XX' , 2byte 문자 -> '%uXXXX')
- encodeURIComponent() : 알파벳, 숫자 제외한 모든 문자 인코딩 (= UTF-8 인코딩)
3> 숫자확인 함수
- isFinite() : number가 유한하면 true, 무한이면 false
- inNaN() : number가 숫자가 아니면 true, 숫자이면 false
* 'a' 매개변수에 선언 되지 않을 때, 별도로 선언하는 방식
if (typeof (a) == "undefined") {a=1;}
if (!a) {a=1;}
a = a || 1;
'IT ▶ > Java & Web' 카테고리의 다른 글
[Java] "".equals() 와 '==' 으로 Null 값 체크방식 차이 정리 (2) | 2019.07.26 |
---|---|
[JavaScript] 객체, 생성자 개념 (Object, Constructor Concept) (2) | 2019.05.12 |
[JavaScript] Java 예제 공부 (0) | 2019.04.28 |
[Java] HashMap 개념 (상속, super 클래스) (0) | 2019.04.27 |
[Java] 자바 배열 개념 (Java Array Concept) (0) | 2019.04.19 |