새소식

zerocho

javascript #3. 함수

  • -

 

 

자바스크립트의 꽃은 함수라고 한다...!.....

 

오늘은 자바스크립트 꽃에 대해 설명해 보겠습니다.

(요즘에는 ES6의 화살표 함수 구조가 더 많이 사용되는 걸로 알고 있는데, 일단 함수의 기본부터 설명해 보겠습니다!)

 

 

함수 (Function) 

자바스크립트에서 함수는 

function add(x) {
  var y = x + 1;
  return y;
}

var mul = function(x) {
  var y = x * 2;
  return y;
};

이런 구조로 선언할 수 있습니다. 

add 함수는 add라는 함수 안에 처리해 줄 값들을 설정해 주고,

mul은 변수 mul을 선언한 후, 그 변수에 함수를 대입해 주는 방식으로 설정해 주었습니다. 

 

mul함수를 더 자세히 보자면!

mul은 함수를 정의해 줄 함수의 이름, 또는 변수의 이름이 되고 

function() 괄호 안에 값 x는 자신이 넣고 싶은 변수를 넣어주는 매개변수(parameter)가 됩니다. 

즉 , y는 매개변수 x의 값을 받아서 곱하기 2를 해주고 y를 return 하라는 함수인 거죠. 

 

참 쉽죠~???

 

이 함수를 실행하려면 

var i = mul(1);

i; // 2

이런 식으로 mul() 함수 괄호 안에 매개변수 값 1을 x한테 전달해 주어 호출하면 x는 1을 받아 y의 값을 리턴합니다. 

이때 괄호 안의 1을 인자라 고합니다. 

 

 

함수 중에는 리턴하지 않는 함수도 있습니다!

var dateChecker = function() {
  var date = new Date();
  alert(date);
};
dateChecker(); // undefined

예를 들어 위 함수는 날짜를 표시하는 프로그램인데 

alert를 사용하여 날짜를 띄우지만 

반환해 주는 return 문은 없기 때문에 dateChecker()을 불러와도 undefined가 뜨게 됩니다!

 

"return할 때 주의할 점은 return 이후에는 값을 반환하기 때문에 이후 코드들은 실행되지 않습니다. 주의하세요!"

 

 

 


1급 함수

var mother = function(func) {
  func();
};
var children = function() {
  alert('안녕하세요');
};
mother(children); // '안녕하세요'

mother 함수와 children 함수 생성하였는데, 

mother함수 호출 인자로 children 함수...?

 

이렇게 넣으면 children 함수 자체가 function(func)의 func 매개변수로 전달이 되어 

func();에서 children 함수가 실행됩니다.

 

따라서 값은 안녕하세요가 나오게 되겠죠??^^

 

 

 

이렇게 기초적인 자바스크립트 함수에 대해 소개해봤습니다~

보시는 분 모두가 이해가 되시길 바라며 다음 연산자로 돌아오겠습니당:)

 

 

 

참고: 제로초 

 

 

 

'zerocho' 카테고리의 다른 글

javascript #6. 반복문  (0) 2023.01.27
javascript #5. 조건문  (0) 2023.01.27
javascript #4. 연산자  (0) 2023.01.26
javascript #2. 객체와 배열  (0) 2023.01.26
javascript #1. 변수, 자료형  (0) 2023.01.26
Contents

포스팅 주소를 복사했습니다

이 글이 도움이 되었다면 공감 부탁드립니다.