JavaScript 함수(Functions)


JavaScript 함수는 특별한 임무를 수행하도록 설계된 코드 블록이다.

JavaScript 함수는 “누군가가” 호출했을 때 실행된다.

Example

function myFunction(p1, p2) {
    return p1 * p2;              // The function returns the product of p1 and p2
}
Try it Yourself »

JavaScript 함수 구문

JavaScript 함수는 function 키워드, 다음에 이름(name) , 그리고 괄호 "( )" 로 정의된다.

함수 이름은 문자, 숫자, 밑줄( _ ), 과 달러기호( $)를 가질 수 있다(변수와 같은 규칙) .

괄호는 쉼표로 구분된 매개변수/ 파라메타들을 포함 할 수있다 ( parameter1, parameter2, ... )

함수에 의해 실행되는 코드가 중괄호 { } 내에 놓인다 :

function name(parameter1, parameter2, parameter3) {
    code to be executed
}

함수의 매개변수(parameters)는 함수 정의에 나열된 이름들이다.

함수의 인수(arguments) 는 호출 될 때 함수가 받는 실제 값을 말한다.

함수 내에서 인수(arguments)는 지역변수로서 사용된다.


함수 호출

함수 내부의 코드는 “다음과 같은 것들에 의해서” 그 함수를 호출(calls)할 때  실행됩니다.
  • 이벤트가 발생할 때 (사용자가 버튼을 클릭 할 때)
  • “어디서든지" 자바 스크립트 코드에 의해서 호출 될 때 
  • 자동 (스스로 호출)

함수의 매개변수(parameters) 및 인수(arguments)

당신이 함수를 호출 할 때, 값을 전달할 수 있습니다. 이 값은 인수(arguments) 또는 매개 변수(parameters)라고합니다.

함수 정의에 사용 된 식별자를 매개 변수(parameters)라고 부른다.

여러 매개 변수는 쉼표(,)로 구분됩니다 :

function name(parameter1, parameter2, parameter3) {
    code to be executed
}

함수가 호출 될 때, 파라미터를 위해 사용되는 값을  인수(arguments) 라고 부른다.

매개 변수와 인수는 같은 순서로 해야합니다 :

var x = myFunction(argument1, argument2);

함수 내에서 인수는 변수로서 사용될 수 있다.

종종 인수는 반환 값을 계산하는 데 사용됩니다.

Note    JavaScript는 대소 문자를 구분합니다. function 키워드는 소문자로 작성해야 합니다. 함수는 함수 이름에 사용 ​​된 것과 동일한 문자 대소문자로 호출해야 합니다. 인수 이름은 매개 변수의 이름에 사용 ​​된 것과 동일한 문자의 대문자를 사용해야 합니다.


함수 Return

함수 내부에서 자바 스크립트가 return 문에 도달하면  함수는 실행이 중지됩니다.

함수가 JavaScript 문에서 호출된 경우라면, JavaScript 는 “반환(return)”하고 그 문 다음 코드를 실행하게 된다.

함수들은 종종 리턴 값을 계산한다. 반환 값은 “호출자(caller)”에게 "반환(return)" 된다 :

Example

Calculate the product of two numbers, and return the result:

var x = myFunction(4, 3);        // Function is called, return value will end up in x

function myFunction(a, b) {
    return a * b;               // Function returns the product of a and b
}

The result in x will be:

12
Try it Yourself »

함수를 왜 사용하는가?

코드를 재사용 할 수 있다 : 코드를 한 번 정의하고, 여러 번 사용합니다.

다른 결과를 생산하기 위해, 다른 인수와 동일한 코드를 여러 번 사용할 수 있습니다.

Example

Convert Fahrenheit to Celsius:

function toCelsius(fahrenheit) {
    return (5/9) * (fahrenheit-32);
}
document.getElementById("demo").innerHTML = toCelsius(77);
Try it Yourself »


() 연산자는 함수를 호출한다.

위의 예에서, toCelsius 는 함수 객체를 말하며, toCelsius() 는 함수 결과를 말한다.

Example

Accessing a function without () will return the function definition:

function toCelsius(fahrenheit) {
    return (5/9) * (fahrenheit-32);
}
document.getElementById("demo").innerHTML = toCelsius;
Try it Yourself »


변수로 사용된 함수

JavaScript 에서는 함수를 변수와 같이 사용될 수 있다.

Example

You can use:

var text = "The temperature is " + toCelsius(77) + " Celsius";

Instead of:

var x = toCelsius(32);
var text = "The temperature is " + x + " Celsius";
Try it Yourself »


Test Yourself with Exercises!

Exercise 1 »   Exercise 2 »   Exercise 3 »   Exercise 4 »   Exercise 5 »