6.13 개발일지. 함수 종합편

김지형·2022년 6월 13일
0

ai-school

목록 보기
20/61

학습한 내용

함수에 대하여

함수 표현의 장점

각 명령의 시작과 끝을 명확하게 구별할 수 있다
함수에 별도의 이름을 붙이면 같은 기능이 필요할 때마다 해당 함수를 실행할 수 있다

자바스크립트를 활용한 간단한 계산
같은 식을 함수로 표현
자바스크립트에서는 함수를 호출하는 코드를 어디에 적어도 상관없다
다만, 프로그래밍 언어에 따라 위 방법으로 작성하면 오류가 뜨는 언어가 있다

자바스크립트에서는 위와 같이 변수를 미리 사용하고 선언을 해도 오류가 생기지는 않는다
이 개념이 호이스팅이다
프로그램이 y변수를 설정했지만 아무 값을 선언하지 않았다고 가정하기 때문이다
이 현상을 방지하기 위해 생겨난 태그가 let과 const이다

let과 const

let은 프로그램 안에서 값이 변하는 변수이고,
const는 프로그램 안에서 값이 변하지 않는 변수이다
이들의 특징에는

블록 영역의 스코프
변수를 선언하지 않고 사용하면 오류 발생
같은 변수를 다시 선언하면 오류 발생

등이 있다
var 변수는 이미 있는 변수를 다시 선언할 수 있다는 특징이 있다
다만, 이는 실수로 다른 위치에서 같은 변수를 선언해버릴 수 있다는 문제가 있고,
재선언하면 이전 변수를 덮어버리기 때문에 예상치 못한 오류가 생길 수 있다

1+2+3+4+5+6+7+8+9+10 = 55

변수 사용시 주의점

전역 변수는 최소한으로 사용한다
var 변수는 함수의 시작 부분에서 사용한다 (호이스팅 방지)
for문의 카운터 변수는 블록 변수(let)를 사용하는게 좋다
ES6를 사용한 프로그램이라면 var보다 let을 사용한다

함수의 일반화

함수를 일반화 하려면 매개변수와 인수를 사용한다

매개변수

함수를 실행하기 위해 필요하다고 지정하는 값
함수를 선언할 때 함수 이름 옆의 괄호 안에 매개변수 이름을 넣음
function addNumber( 매개변수 ){ 실행문장 }

인수

함수를 실행할 때 매개변수로 넘겨주는 값
addNumber( 인수 )

return

return문은 함수를 실행한 결과값을 함수 밖으로 넘기는 코드이다
함수의 결과값이 저장된 변수 sum을 return으로 반환하고, result에 저장한다
그 저장된 result를 출력하는 원리이다

어려운 내용

실습에 대한 어려움은 없었고, 이론을 다시 공부하니 꽤 어려운 느낌이었다

해결방법

강의자료를 보면서 다시 한번 복습한다

학습소감

함수에 대한 이론을 마무리하며 간단하게 정리해보았다
지금까지 공부하고 실습하면서 크게 어렵다고 느껴지진 않았는데 이렇게 다시 꼼꼼하게 강의를 들으니 또 새로운 느낌이었다
마치 처음 듣는 것 처럼..

profile
안녕하세요!

0개의 댓글