function sum(a,b){
return a + b;
}
sum(1,2);
sum(7) // NaN
function sum(a,b = 0){
return a + b;
}
sum(1,2);
sum(7) // 7
const user = {
name : 'HEROPY',
age : 20
}
function getName(user){
return user.name
}
console.log(getName(user))
const user = {
name : 'HEROPY',
age : 20
}
function getName(user){
const {name} = user
return name
}
function getNameV2({name}){
return name
}
const user = {
name : 'HEROPY',
age : 20
}
function getEmail({email = 'email이 입력되지 않았습니다.'}){
return email;
}
console.log(getEmail(user)) //email이 입력되지 않았습니다.
배열 구조 할당 분해
const fruits = ['Apple' , 'Banana', 'Cherry']
const numbers = [1,2,3,4,5,6,7]
function getSecondItem(array){
return array[1]
}
console.log(getSecondItem(fruits))
function getSecondItemV2([,b]){
return b;
}
console.log(getSecondItemV2(numbers)) // 2
나머지 매개변수
function sum(...rest){
console.log(rest); // 1,2 : []
console.log(rest); // 1,2,3,4 : [3,4]
return rest.reduce(function (acc, cur) {
return acc + cur
}, 0)
}
function sumV2(a,b,...rest){
console.log(rest); // 1,2 : []
console.log(rest); // 1,2,3,4 : [3,4]
}
console.log(sum(1,2)); // 3
console.log(sum(1,2,3,4)) // 10
console.log(sum(1,2,3,4,5,6,7,8,9,10)) // 55
cf: 함수에서 return이 없으면 undefined가 리턴이 된다.