본문 바로가기

Java115

[JavaScript] Ch2-5 자바스크립트 함수 스스로 호출하는 명명 함수 스스로 호출하는 명명 함수 스스로 호출하는 함수에 이름을 부여할 수도 있지만 이름은 해당 함수 안에서만 볼 수 있다. 다음 예제를 보자. 1 2 3 4 5 6 7 (function sayHello(){ console.log(sayHello); //함수의 소스 코드를 출력 })(); console.log(sayHello); //ReferenceError: sayHello is not defined Colored by Color Scripter cs 이름을 지정함 함수는 재귀 호출에 사용할 수 있다. 다음 예제를 보자. 1 2 3 4 5 6 7 var result = (function factorial(n){ return n == 1? n: n*factorial(n-1) })(6); console.log(r.. 2017. 8. 14.
[JavaScript] 자바스크립트 함수 스스로 호출하는 익명 함수 스스로 호출하는 익명 함수 자바스크립트에서는 일반적으로 함수를 특정 시점에 정의하고 나중에 해당 함수를 호출한다. 스스로 호출하는 함수를 이용하면 브라우저에서 함수 정의를 파싱할 때 해당 함수가 실행된다. 문법은 다음과 같다. 1 2 3 4 5 (function () { // 함수 본문 }()); cs 보다시피 괄호 안에 함수를 집어넣을 필요가 있는데, 스스로 호출하는 함수는 반드시 함수 표현식이어야 하기 때문이다. 또 다른 문법은 다음과 같다. 1 2 3 4 5 (function () { // 함수 본문 })(); cs 스스로 호출하는 함수의 이점은 코드를 한 번 실행해야 하지만 전역 또는 심지어 지역 변수로도 선언하고 싶지 않은 경우다. 예제에서는 함수에 대한 참조를 유지하지 않았다. 함수가 초기화되.. 2017. 7. 19.
[JavaScript] Ch2-5 자바스크립트 함수 함수는 값이다 함수는 값이다 자바스크립트 함수는 평범한 값이며, 선언과 표현식에서 모두 변수를 선언하고 함수를 해당 변수에 집어넣는다. 다음과 같이 함수를 다른 변수에 할당하는 것도 가능하다. 1 2 3 4 5 6 7 function multiply(x, y){ return x*y; } var m = multiply; console.log(m(5,5)); // 25 cs 함수는 참조로 할당되므로 m과 multiply 변수는 모두 같은 함수를 참조한다. 함수를 다른 함수에 인자로 전달하는 것도 가능하다. 1 2 3 4 5 6 7 8 9 10 11 function multiply(x, y){ return x*y; } function doSomething(f){ return f(5,5); } console.log(doSom.. 2017. 5. 31.
[JavaScript] 자바스크립트 함수 값을 반환하는 함수 값을 반환하는 함수 함수에서는 return 문을 이용해 값을 반환할 수 있다. 1 2 3 4 5 6 function multiply(x, y){ return x*y; } console.log(multiply(5,5)); // 25 cs 값을 반환하지 않는 함수는 undefined를 반환한다. 1 2 3 4 5 6 function multiply(x, y){ var result = x*y; } console.log(multiply(5,5)); // undefined Colored by Color Scripter cs 빈 리턴문도 undefined를 반환한다. 1 2 3 4 5 6 7 function multiply(x, y){ var result = x*y; return; } console.log(mult.. 2017. 2. 7.