keembloo

함수정의 및 함수 사용 목적 (함수 왜 쓰나요?) 본문

JS

함수정의 및 함수 사용 목적 (함수 왜 쓰나요?)

keembloo 2023. 6. 26. 10:23
728x90

함수 [함: 상자 / 수 : 숫자]


- 상자 안에 들어있는 수 /코드
- 누군가가 미리 상자에 넣어둔 수 /코드
- 미리 정의[만들어진]된 수/코드

 

ex) 요리{레시피}
- 라면 스프{ 소금 , 고춧가루, 간장분말 }

 

1. function = 함수 / 행동 / 이벤트 내용물
2. 하나의 특별한 목적의 삭업을 수행하기 위한 독립적인 코드의 집합

 



함수의 사용 목적

 


  1. 재활용성/재사용 : 한번 정의[만들기] 하면 반복적으로 사용 가능 / 중복 코드 묶음처리 = 클린코딩
 

 


  2. 인수[매개변수]/반환[리턴] : 인수에 따른 서로 다른 반환값 얻을 수 있다.

 


  - 인수[매개변수] : 함수 안으로 들어가는 수/코드/변수/객체/배열/함수 [*생략가능]
  - 반환[리턴] : 함수 밖으로 나오는 수/코드/변수/객체/배열/함수 [*생략가능]


  ex)
  더하기함수{x+y} [1. 함수정의]
  더하기함수(3,5) [2. 함수 인수전달]
  함수반환 = 8 [3. 함수 실행 결과]

 

 인수/매개변수/INPUT
               |
          function 
               |
    반환/리턴/OUTPUT
    
 -> 다른예

자판기
인수 : 돈 , 음료수번호
정의{입력받은 돈이하의 음료수 번호에 따른 데이터 검사}
반환 : 선택된 음료수 [*돈과 선택에 다른 서로다른 음료수]

 

 

 

3. 메모리 효율성 높일수 있다.

 


- 함수 {} 안에서 '{' 시작되고 '}' 끝나면 메모리/코드 다 사라짐/초기화
- 지역변수 : {}안에서 선언된 메모리는 {}밖으로 못나감
- 전역변수 : {}없는곳에서 선언된 메모리는 모든곳에서 호출 가능


*메모리 : 변수/상수/배열/객체 등등
*메모리 증가 -> 속도 감소 -> 개발비(돈) 증가

 

 

 


 

함수의 구조 (사용방법)

 

function 함수명( 인수1 , 인수2 , 인수3){				
		**** 코드 정의 ****
		return 반환값;
}


1. function : 함수 선언 키워드


2. 함수명 : 서로 다른 함수간의 식별용[*js내 동일한 이름불가 / 키워드(let, const, var 등) 불가]


3. ( ) : 인수 [ 함수 안으로 들어가는 코드/변수/배열/객체 등] 여러개일경우 쉼표, 로 구분


4. { } : '{'     함수 시작   /        '}' 함수 끝


5. return : 함수 종료/리턴 [ * 해당 함수를 호출했던 곳으로 반환/리턴 ]
return 3;

함수를 호출했던 곳으로 3반환
return;

반환값이 없으므로 단순 함수종료

 

 

728x90