함수를 업그레이드- default parameter/ argument's'

최문길·2023년 11월 4일
1

JavascriptES6

목록 보기
8/23

default 파라미터

함수를 만들 때/ 기능을 만들 때 default로 값을
줄 수 있숨다.

주는 방법은 그냥 파라미터에 '변수명 = 값' 이렇게 주면 된다.

function 기능(count,page = 1) {
  	console.log(count,page); // 3,1
}
기능(3)
default 파라미터에 연산도 가능하다.
function 기능(a, b = 2 * a) {
  console.log(a + b) // 9
}
기능(3)

심지어 함수도 입력 가능하다.

function 임시함수(){
  return 10 
  // return 하면 특정 값을 남겨주세요 이므로 b자리에 10이 남는다.
}

function 기능(a, b = 임시함수()) {
  console.log( a + b ) // 11
}
기능(1)

내 경험상
난 paging nation을 하였을 때 default 파라미터를 주었다.

결론은 default 파라미터도 쓰게 된다


함수의 arguments

function func(a,b,c) //parameters
{ 
  a,b,c // arguments
}

함수의 모든 파라미터들을 한꺼번에 싸잡고 싶은 경우
arguments라는 키워드를 활용하면 된다.

함수안에서 쓸 수 있는 미리 정의된 키워드 혹은 변수인데

function func(a,b,c) {
  console.log(arguments)
  /*
  Arguments(3)
  0:2,
  1:3,
  2:4
  [2,3,4]를 담은 array 비슷한 자료가 출력됩니다
 */
}
func(2,3,4)

arguments의 특징

arguments는 함수 호출 시, 전달인자들이 배열 형태로 저장된 객체이므로

파라미터 자리에 변수 지정을 안해줘도

함수 내에서 arguments 키워드를 사용하면 인자들을 활용/ 출력 가능하다.

function func(){
  console.log(argument)// Arguments(3) [1,2,3]
}
func(1,2,3)

배열(Array) 형태의 객체이지만 배열이 아니므로 forEach,Map등과 같은 배열 메소드는 사용 할 수 없다(length 메소드는 예외)

그러므로 함수 내에서 arguments의 모든 요소를 출력/수정/순환등을 하고 싶다면

역시 제일 흔한 for문을 통해 작동시키면 된다.

function func(){
  for(let i = 0; i < arguments.length; i++) {
    console.log(arguments[i])//1,2,3
  }
}
func(1,2,3)

0개의 댓글