함수 선언문(function declaration) function 키워드 + 함수이름 + (parameter) + { 함수 본문 } function user() { console.log('hello') } 지역변수(local variable) 함수 내에서 선언한 변수. 함수 내에서만 접근할 수 있다. function hello() { let hi = 'hi' // 함수 외부에서 호출하면 에러남 console.log(hi); } 외부변수(outer variable) 함수 내부에서는 함수 외부변수에 접근할 수 있으며, 함수 내에서 외부 변수를 수정할 수 있다. 함수 외부변수명과 내부변수명의 이름이 같을 경우, 함수 내에서는 내부 변수명이 더 우세하다.(외부변수를 가림) let username = '유비';..
함수 정의 함수를 만드는 과정에서 가장 중요한 것은 저장과 호출에 대한 이해이다. 앞서 살펴본 것 처럼 함수를 저장하기 위해서는 def 라는 예약어를 사용한다. def sayHello(): print('hello') : (콜론) 뒤에 실행하고자 하는 코드를 입력하는 것 만으로는 함수는 실행되지 않는다. def 에 작성된 것은 단순히 함수를 정의하는 단계이다. 작성한 함수를 실행하려면 함수를 호출해야 한다. 함수 호출 def sayHello(): print('hello') sayHello() # hello 출력 정의한 함수의 이름으로 인자를 호출하면 함수가 출력된다. 다만 위의 함수는 아무 인자가 없다. 그냥 부르면 호출되는 무식한 함수이다. 인자(Argument) 인자는 함수를 호출할 때 전달하는 값을 ..
함수의 수학적 정의는 모든 정의역은 하나의 출력값을 가지며, 출력값을 2개 이상 가질 수 없다.... 라고 아마추어틱하게 설명할 수 있는데 풀어서 설명하자면 함수라는 상자에 무언가를 넣으면 그것에 맞는 하나가 꼭 나와야 함수라고 할 수 있다. 프로그래밍에서, 함수의 간단하고도 더러운(?) 예시 다소 더럽지만 각인이 쉬운 똥으로 예시를 들어보자. 많은 사람들이 매일 화장실에서 큰일을 본다. 대변을 보는 행위는 같지만 먹는 것은 매일 달라진다. ↑ 위의 예시로써 함수의 설명이 끝났다. 매일 매일 똥싸는 행위가 정의(definition)되었고 매일 먹는게 다르니 똥을 싸기 위해 전달해야 하는 정보(인수, 인자, Argument)가 확실해졌다. 이걸 프로그래밍하면 반복적으로 똥싸는 행위를 서술하는게 그다지 복잡..