Skip to content

Commit d364a8c

Browse files
[함수 기초] 보완
1 parent 1de7f5b commit d364a8c

File tree

1 file changed

+17
-17
lines changed

1 file changed

+17
-17
lines changed

1-js/02-first-steps/14-function-basics/article.md

Lines changed: 17 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -4,13 +4,13 @@
44

55
사용자가 로그인이나 로그아웃을 했을 때 안내 메시지를 보여주는 동작 같은 경우 말이죠.
66

7-
함수는 프로그램을 구성하는 주요 "구성 요소(building blocks)"입니다. 함수를 이용하면 중복 없이 유사한 동작을 하는 코드를 여러 번 호출할 수 있습니다.
7+
함수는 프로그램을 구성하는 주요 '구성 요소(building block)'입니다. 함수를 이용하면 중복 없이 유사한 동작을 하는 코드를 여러 번 호출할 수 있습니다.
88

99
우리는 앞서 다양한 예시에서 `alert(message)`, `prompt(message, default)`, `confirm(question)`과 같은 내장 함수를 사용해 보았습니다. 이번 챕터에선 함수를 직접 만드는 방법에 대해 알아보겠습니다.
1010

1111
## 함수 선언
1212

13-
*함수 선언(function declaration)* 방식을 이용하면 함수를 만들 수 있습니다(역주: 함수 선언문이라고 부르기도 ).
13+
*함수 선언(function declaration)* 방식을 이용하면 함수를 만들 수 있습니다(함수 선언 방식은 함선 선언문이라고 부르기도 합니다 - 옮긴이).
1414

1515
함수 선언 방식은 아래와 같이 작성할 수 있습니다.
1616

@@ -20,7 +20,7 @@ function showMessage() {
2020
}
2121
```
2222

23-
`function` 키워드, *함수 이름*, 괄호로 둘러싼 매개변수를 차례로 써주면 함수를 선언할 수 있습니다. 위 함수에는 매개변수가 없는데, 만약 매개변수가 여러 개 있다면 각 매개변수를 콤마로 구분해줍니다. 이어서 함수를 구성하는 코드의 모임인 "함수 본문(body)"을 중괄호로 감싸 붙여줍시다.
23+
`function` 키워드, *함수 이름*, 괄호로 둘러싼 매개변수를 차례로 써주면 함수를 선언할 수 있습니다. 위 함수에는 매개변수가 없는데, 만약 매개변수가 여러 개 있다면 각 매개변수를 콤마로 구분해줍니다. 이어서 함수를 구성하는 코드의 모임인 '함수 본문(body)'을 중괄호로 감싸 붙여줍시다.
2424

2525
```js
2626
function name(parameters) {
@@ -51,7 +51,7 @@ showMessage();
5151

5252
## 지역 변수
5353

54-
함수 내에서 선언한 변수(지역 변수, local variable)는 함수 안에서만 접근할 수 있습니다.
54+
함수 내에서 선언한 변수인 지역 변수(local variable)는 함수 안에서만 접근할 수 있습니다.
5555

5656
예시:
5757

@@ -66,12 +66,12 @@ function showMessage() {
6666

6767
showMessage(); // 안녕하세요!
6868

69-
alert( message ); // <-- Error: message is not defined (message는 함수 내 지역 변수이기 때문에 에러가 발생합니다.)
69+
alert( message ); // ReferenceError: message is not defined (message는 함수 내 지역 변수이기 때문에 에러가 발생합니다.)
7070
```
7171

7272
## 외부 변수
7373

74-
함수 내부에서 함수 외부의 변수(외부 변수, outer variable)에 접근할 수 있습니다.
74+
함수 내부에서 함수 외부의 변수인 외부 변수(outer variable)에 접근할 수 있습니다.
7575

7676
```js run no-beautify
7777
let *!*userName*/!* = 'John';
@@ -84,7 +84,7 @@ function showMessage() {
8484
showMessage(); // Hello, John
8585
```
8686

87-
함수 내부에서 외부의 변수에 접근하는 것뿐만 아니라, 수정도 할 수 있습니다.
87+
함수에선 외부 변수에 접근하는 것뿐만 아니라, 수정도 할 수 있습니다.
8888

8989
예시:
9090

@@ -105,7 +105,7 @@ showMessage();
105105
alert( userName ); // 함수에 의해 *!*Bob*/!* 으로 값이 바뀜
106106
```
107107

108-
외부 변수는 지역 변수가 없는 경우에만 사용됩니다.
108+
외부 변수는 지역 변수가 없는 경우에만 사용할 수 있습니다.
109109

110110
함수 내부에 외부 변수와 동일한 이름을 가진 변수가 선언되었다면, 내부 변수는 외부 변수를 *가립니다*. 예시를 살펴봅시다. 함수 내부에 외부 변수와 동일한 이름을 가진 지역 변수 `userName`가 선언되어 있습니다. 외부 변수는 내부 변수에 가려져 값이 수정되지 않았습니다.
111111

@@ -128,16 +128,16 @@ alert( userName ); // 함수는 외부 변수에 접근하지 않습니다. 따
128128
```
129129

130130
```smart header="전역 변수"
131-
위 예시의 `userName`처럼, 함수 외부에 선언된 변수는 *전역 변수(global variable)*라고 부릅니다.
131+
위 예시의 `userName`처럼, 함수 외부에 선언된 변수는 *전역 변수(global variable)* 라고 부릅니다.
132132
133-
전역 변수는 (같은 이름을 가진 지역 변수에 의해 가려지지만 않는다면) 모든 함수에서 접근할 수 있습니다.
133+
전역 변수는 같은 이름을 가진 지역 변수에 의해 가려지지만 않는다면 모든 함수에서 접근할 수 있습니다.
134134
135-
변수는 연관되는 함수 내에 선언하고, 전역 변수는 되도록 사용하지 않는 것이 좋습니다. 최근에 작성된 코드들은 대부분 전역변수를 사용하지 않거나 최소한으로만 사용합니다. 그런데 프로젝트 수준(project-level)의 데이터를 저장할 때 전역변수가 유용하게 사용되는 경우도 있습니다.
135+
변수는 연관되는 함수 내에 선언하고, 전역 변수는 되도록 사용하지 않는 것이 좋습니다. 비교적 근래에 작성된 코드들은 대부분 전역변수를 사용하지 않거나 최소한으로만 사용합니다. 다만 프로젝트 전반에서 사용되는 데이터는 전역 변수에 저장하는 것이 유용한 경우도 있으니 이 점을 알아두시기 바랍니다.
136136
```
137137

138138
## 매개변수
139139

140-
매개변수(parameter)를 이용하면 임의의 데이터를 함수 안에 전달할 수 있습니다. 매개변수는 *인수(argument)* 라고 불리기도 합니다(역주: 매개변수와 인수는 엄밀히 같진 않지만, 튜토리얼 원문을 토대로 번역하였습니다).
140+
매개변수(parameter)를 이용하면 임의의 데이터를 함수 안에 전달할 수 있습니다. 매개변수는 *인수(argument)* 라고 불리기도 합니다(매개변수와 인수는 엄밀히 같진 않지만, 튜토리얼 원문을 토대로 번역하였습니다 - 옮긴이).
141141

142142
아래 예시에서 함수 showMessage는 매개변수 `from``text`를 가집니다.
143143

@@ -187,7 +187,7 @@ showMessage("Ann");
187187
188188
이렇게 코드를 작성해도 에러가 발생하지 않습니다. 두 번째 매개변수에 값을 전달하지 않았기 때문에 `text``undefied`가 할당될 뿐입니다. 따라서 에러 없이 `"Ann: undefined"`가 출력됩니다.
189189
190-
매개변수에 값을 전달하지 않아도 그 값이 `undefined`가 되지 않게 하려면 "기본값(default value)"을 설정해주면 됩니다. 매개변수 오른쪽에 `=`을 붙이고 `undefined` 대신 설정하고자 하는 기본값을 써주면 되죠.
190+
매개변수에 값을 전달하지 않아도 그 값이 `undefined`가 되지 않게 하려면 '기본값(default value)'을 설정해주면 됩니다. 매개변수 오른쪽에 `=`을 붙이고 `undefined` 대신 설정하고자 하는 기본값을 써주면 되죠.
191191
192192
```js run
193193
function showMessage(from, *!*text = "no text given"*/!*) {
@@ -364,10 +364,10 @@ return (
364364
365365
이 외에 아래와 같은 접두어를 사용할 수 있습니다.
366366
367-
- `"get…"` -- 값을 반환함,
368-
- `"calc…"` -- 무언가를 계산함,
369-
- `"create…"` -- 무언가를 생성함,
370-
- `"check…"` -- 무언가를 확인하고 불린값을 반환함.
367+
- `"get…"` -- 값을 반환함
368+
- `"calc…"` -- 무언가를 계산함
369+
- `"create…"` -- 무언가를 생성함
370+
- `"check…"` -- 무언가를 확인하고 불린값을 반환함
371371
372372
위 접두어를 사용하면 아래와 같은 함수를 만들 수 있습니다.
373373

0 commit comments

Comments
 (0)