[JavaScript] Function(함수) - parameter, argument

2022. 9. 21. 15:44JavaScript

⚡️매개 변수(parameter)

함수를 정의 하면서, 함수 선언식의 괄호()안에 어떤 변수명 을 쓰면, 우리는 그걸 매개변수 라고 부릅니다. 매개 변수는 그 이름처럼 실제로 함수 안쪽에서 변수와 같은 역할을 하게 됩니다. 함수가 호출될 때 값을 전달받게 되면 매개 변수에 값이 정의됩니다.

 

⚡️인자(argument)

어떤 함수를 호출하면서, 호출문의 괄호 안에 어떤 값 또는 값이 정의된 변수를 쓰면, 우리는 그걸 인자 라고 부릅니다. 함수에서 매개변수를 적어둔 상태라면, 호출시 인자로 전달한 값은 매개변수를 통해 사용 가능하게 됩니다.


⚡️Function(함수) - parameter, argument

function halfNumber(value) { 
  let myValue = value / 2;   
  return myValue;
}

function halfAndAddNumber(num) {               
  let result = halfNumber(num) + 1;           
  return result;
  }
console.log(halfAndAddNumber(6))               //4

halfAndAddNumber(num)에 num 인자를 halfNumber()에 num값을 넣고 let result  = halfNumber(num) + 1 에서 halfNumber(num)을 호출하면 result 값을 얻게된다.

 

⚡️Function(함수)- 여러인자

function meetAt(year, month, date) {
  if (arguments.length === 1) {
    return year + "년";
  } else if (arguments.length === 2) {
    return year + "년" + " " + month + "월";
  } else if (arguments.length === 3) {
    return year + "/" + month + "/" + date;
  }
}
console.log(meetAt(2022));                   //"2022년"
console.log(meetAt(2022, 9));                //"2022년 9월"
console.log(meetAt(2022, 9, 21));            //"2022/9/21"

arguments.length 인자의 갯수로 조건문을 작성.

 

⚡️Function(함수)- 데이터 반환하기

function getTax(price) {
  return price * 0.1;
}
 
function calculateTotal(price) {
  return price + getTax(price);
} 

function getTotal(price1, price2) {
  return calculateTotal(price1) + calculateTotal(price2);
}
console.log(getTotal(1000, 2000))             //3300

getTotal에 두개의 인자를 각각 calculateTotal() 함수에 넣어 반환값을 더한값.

 

⚡️array(배열)

function addFirstAndLast(myArray) {
  if (myArray.length >= 2){
    return myArray[0]+myArray[myArray.length-1];
  } else if (myArray.length === 1) {
    return myArray;
  } else if (myArray.length === 0) {
    return 0;
  }
}
console.log(addFirstAndLast([1,2,3]));         //4

숫자값인 배열에 2개 이상의 값이 있을때  첫번째 element와 마지막 element의 값을 더한 값을 리턴 배열이 1개의 element 일경우 해당 element 값을 리턴배열이 비어있을 경우 0을 리턴