함수의 선언과 표현
함수의 선언과 표현
Santino
2023. 6. 23. 02:25
// Function
// fundamental building block in the program
// subprogram can be used multiple times
// performs a task or calculates a value (1가지의 일 또는 계산하기 위해 사용됨)
1. Function declaration
// function name(param1, param2) { body... return; }
// one function === one thing (하나의 함수는 한가지의 일만 하도록 만들 필요)
// naming: doSomething, command, verb
// e.g. createCardAndPoint -> createCard, createPoint (세분화해서 나눌 수 있지는 않을지 고민 필요)
// function is object in JS (function은 객체임)
[Javascript] " Function() " vs " Const = () => "
간략하게 그 둘의 차이를 말하자면, 범위 ( Scope)의 차이라고 정의 할 수 있겠다.
1) function () 같은 경우는 다른 문장의 가장 상단에서 읽히는 hoisting 이 허용이 되고,
2) const = () => 같은 경우에는 block 내부에서만 구현이 가능한 범위를 가지고 있으며,
다시 선언이 될 수 없다는 특징을 가지고 있다.
// 2. Parameters
// premitive parameters: passed by value
// object parameters: passed by reference
function ChangeUserName(User) {
User.name = 'santino';
}
const sangmin = { name: 'sangmin' };
ChangeUserName(sangmin);
console.log(sangmin);
3. Default parameters (added in ES6)
function showMessage(message, from){
console.log(`${message} by ${from}`);
}
showMessage('Hi');