함수 정의 | function 함수명 ( ) { }
함수는 function 키워드를 사용하여 선언한다.
function sayHello() {
console.log("Hello, World!);
}
함수 호출 | 함수명( )
C++과 마찬가지로 함수명( )으로 호출할 수 있다.
sayHello()
함수 표현식 | 변수명 = function( ) { }
함수 표현식은 변수에 함수 정의를 할당하는 방식이다.
함수 표현식으로 정의된 함수는 변수를 통해 접근할 수 있다.
▷마치, 함수명이 변수명이 된 것과 같다.
const sayGoodBye = function() {
console.log("Goodbye, World!")
}
sayGoodBye()
const multiply = function(a, b) {
console.log(a * b)
}
multiply(1, 2)
화살표 함수 | ( ) => { } 또는 () => 표현식
ES6부터 도입된 화살표 함수는 간결한 문법으로 함수를 정의할 수 있는 방식이다.
주로 함수 표현식을 단순화하는 용도로 많이 사용된다.
화살표 함수는 function 키워드 대신 => 화살표를 사용하며, this 바인딩 방식이 일반 함수와 다르다.
const add = (a, b) => {
return a + b;
}
console.log(add(1, 2))
또한, 아래 코드와 같이 return 문만 포함된 경우 { } 중괄호와 return 키워드를 생략할 수 있다.
const square = x => x * x;
console.log(square(5))
익명 함수 | 이름만 없이 정의
익명 함수는 이름이 없는 함수로 주로 일회성으로 사용되는 함수를 말한다.
콜백 함수로 자주 사용되며, 함수 이름 대신 function 또는 => 화살표 문법만 사용하여 정의할 수 있다.
setTimeout(function () {
console.log("1초 후 실행 됩니다.")
}, 1000)
setTimeout(() => {
console.log("1초 후 실행 됩니다.")
}, 1000)
즉시 실행 함수 | ( 함수 )()
IIFE는 정의하자마다 즉시 실행되는 함수이다. 괄호() 를 사용하여 함수를 정의하고 곧바로 호출하는 방식으로 주로 변수를 지역화하거나 코드 블록을 제한할 때 사용된다.
(function junho() { console.log("hi")})();
(()=>{console.log("bye")})()
((a)=> { let b = a * a; console.log(b)})(2)
'Javascript' 카테고리의 다른 글
[Javascript] C++ 객체와 자바스크립트 객체의 차이점 (0) | 2024.11.05 |
---|---|
[Javascript] 콜백함수란? (0) | 2024.04.02 |
[Javascript] 자바스크립트 언어의 특성 | 비동기, async/await 문법 (0) | 2024.04.02 |
[nodeProject] 학교 공지사항 제목 크롤링 | puppeteer, Express.js (0) | 2024.04.01 |
JS : 객체 지향과 클래스 선언하기(인스턴스,생성자,상속) (0) | 2023.11.18 |