[JavaScript] Function

민승기·2023년 10월 17일
0

JavaScript

목록 보기
9/24
post-thumbnail

함수(Function)

  • 같거나 비슷한 코드를 작성할때 매번 작성한다면 코드의 길이도 길어지고 귀찮아지기 마련이다.
    자주 사용하거나 많이 쓰는 코드의 경우에 함수를 활용한다면 재활용도 가능해진다. 또한 유지보수 또한 편할 것이다.
  • 하나의 함수에는 하나의 기능만 넣자.
  • object in JS
    - 자바스크립트 내에서는 함수는 object 이다. 따라서 변수에 할당하거나 파라미터 전달 및 함수 return 까지 가능하다.
  • 중첩 정의가 가능하다.

함수 선언

function functionName() {	//	함수명 : functionName
	console.log("안녕 나는 함수야");	// 함수가 호출되었을 때 실행되는 실행문
}

함수 호출

function functionName() {
	console.log("안녕 나는 함수야");
}

functionName();		// 함수 실행 결과 : 안녕 나는 함수야

파라미터 전달 함수

function changeName(obj) {
    obj.name = 'coder';
}
const seungit = {name : 'seungit'};
changeName(seungit);

console.log(seungit);	// { name: 'coder' }
  • objname이라는 키 값을 coder로 변경하는 함수이다.
  • seungit라는 객체를 만들어주고 changeName(seungit) 함수를 호출하여 값을 변경한다.

Rest 파라미터

  • ...를 통해 매개변수를 배열형태로 전달한다.
function printAll(...args) {
	for (let i = 0; i < args.length; i++) {
    	console.log(args[i]);
    }
}
printAll('one','two','three');	// one, two, three
function foo1(...rest) {
  // 매개변수 rest는 인수들의 목록을 배열로 전달받는 Rest 파라미터다.
  console.log(rest); // [ 1, 2, 3, 4, 5 ]
}

foo1(1, 2, 3, 4, 5);

function foo2(param, ...rest) {
  console.log(param); // 1
  console.log(rest);  // [ 2, 3, 4, 5 ]
}

foo2(1, 2, 3, 4, 5);

function bar(param1, param2, ...rest) {
  console.log(param1); // 1
  console.log(param2); // 2
  console.log(rest);   // [ 3, 4, 5 ]
}

bar(1, 2, 3, 4, 5);

IIFE

  • 함수를 선언과 동시에 함수를 호출하는 방식이다.
  • 선언한 함수 전체를 괄호()로 감싼 후 뒤에 함수 호출하는 방식으로()를 뒤에 붙인다.
(function sayHello() {
    console.log("IIFE");
})();	// 결과 : IIFE
// sayHello();

📌 참고

profile
개발자를 꿈꾸는 늙은이👨🏻‍💻

0개의 댓글