[JavaScript] 함수(Function)
by 캐떠린💡 JavaScript에서는 자료형을 명시적으로 표현이 불가능하다.
number
,string
,boolean
,object
- 변수 생성 →
int num
→number num
→var num
- 반환값 선언 → 자료형 기재 불가능
- 배열 선언 →
int[] nums
→var nums
✓ Function
- 매개변수에는
var
를 쓸 수 없음! 그냥 변수명만 사용해야 함! - 형식
1)매개변수가 있는 경우
, function 생성 + 해당 function 호출
function m1() {
console.log('m1');
}
m1(); // m1
2) 매개변수가 없는 경우
, function 생성 + 해당 function 호출(매개변수 입력)
function m3(name, age) {
console.log(name, age);
}
m3('홍길동', 20); // 홍길동 20
3) 반환값이 있는 경우
, function 생성 + 해당 function 호출하여 console에 바로 찍어보기
function m4() {
return 100;
}
console.log(m4());
//반환값에도 자료형을 적지 않는다!
Java Method vs JavaScript Function 비교
//Java Method
public [static] int m1(int num) {
return 10;
}
//JavaScript Function
//매개변수는 var 쓸 수 없음! 그냥 변수명만 사용해야 함!
function m1(num) {
return 10;
}
⚠️ 주의사항
- 매개변수를 받는 변수가 하나임에도 다수의 매개변수를 입력하면 에러가 발생하지 않는다. → 첫번째 매개변수값만 받는다. ⇒ 사용 금지!!!
- 매개변수가 있는 function을 호출할 때 매개변수를 입력하지 않아도 에러가 발생하지 않는다. → undefined 출력 But ⇒ 사용 금지!!!
- 아래와 같이 function에 내장배열(arguments)을 사용하면 여러 매개변수를 입력받아도 해당 값 모두 출력이 가능하다.
function m2(name) {
console.log('name: ' + name);
//내장 배열 > 자바스크립트가 스스로 만들어서 제공하는 배열
//- arguments
//- 함수의 실인자값들을 저장하는 내장 배열
console.log(arguments[0]);
console.log(arguments[1]);
console.log(arguments[2]);
}
m2('홍길동');
m2('아무개');
m2('하하하');
m2(); //undefined -> 사용 금지
m2('홍길동', '아무개', '하하하'); //'홍길동'만 받음 -> 사용 금지
JavaScript → 값이 없음
1. null
: 개발자가 의도적으로 비워놓은 상태
2. undefined
: 변수가 선언된 직후 상태(초기화 되기 전)
var num1;
console.log(num1); //undefined
var num2 = null;
console.log(num2); //null
==, !=
- 자료형의 비교를 하지 않는다.
- 값만 비교한다.
console.log(undefined == null); //true
console.log(undefined != null); //false
console.log(10 == '10'); //true
===, !==
- 진성 비교 연산자
- 자료형의 비교를 한다.
- 값의 비교를 한다.
- (Java에서 사용하는 equal(비교연산자)은 여기에 해당된다.)
console.log(undefined === null); //false
console.log(undefined !== null); //true
console.log(10 === '10'); //false
'JavaScript' 카테고리의 다른 글
[JS] for문에서 객체 배열에 추가하기(초기화, JSON, Spread Syntax 사용) (0) | 2025.01.09 |
---|---|
[JavaScript Library] Toastr 라이브러리로 alert() 대체하기 :: 예쁜 알람 메세지 (0) | 2024.03.12 |
[JavaScript] 자료형(Data Type) (0) | 2023.10.04 |
[JavaScript] JavaScript에 대하여 (0) | 2023.10.04 |
블로그의 정보
All of My Records
캐떠린