function sayHello (name, age) {
console.log(`Hello ${name} you are ${age} years old`);
}
sayHello('Nicolas', 25);
function sayHello (name, age) {
return(`Hello ${name} you are ${age} years old`);
}
sayHello('Nicolas', 25);
function sayHello (name, age) {
console.log(`Hello ${name} you are ${age} years old`);
}
//(1번)// const greetNicolas = sayHello('Nicolas', 25);
//(2번)// console.log(greetNicolas);
자 이렇게 해놓고 run!
1번은 찍혀서 나온다. Hello Nicolas you are 25 years old
2번은 undefined 라 나온다. 왜?
greetNicolas 는 sayHello 의 실행된 결과 값이다.
그런데 함수 내 console.log 에서 아무것도 반환하지 않았다. 아무것도 쓰지 않았다.
만약 greetNicolas 가 정의 안된 상태 (undefined) 가 되지 않길 원한다면, 뭔가를 반환 하도록 해야 한다.
function sayHello (name, age) {
return(`Hello ${name} you are ${age} years old`);
}
const greetNicolas = sayHello('Nicolas', 25);
함수 내 return 사용, 여튼 이렇게 반환하게 만들면 아래 정의 greetNicolas는 '정의가 안된 상태, undefined' 가 되지 않겠지?
뭔가를 반환하게 하지만 그걸 console.log 로 찍어 주지는 않음.
: 위의 sayHello 함수는 어떤 값을 반환하지만 console.log 없이는 암것도 안뜬다.
function sayHello (name, age) {
return(`Hello ${name} you are ${age} years old`);
}
const greetNicolas = sayHello('Nicolas', 25);
console.log(greetNicolas);
Hello Nicolas you are 25 years old
콘솔 로그는 객체이다. 객체는 딕셔너리와 동의어인가? {}?? 함수는 객체인가?
console.log('뭐시기') 처럼 calculator.plus(5, 5) 이런 것도 만들고 싶어.
: 그 말은 함수 기능을 객체 안에 구현해야 한다는 것이다. ( 아 뭐 말이 왜 이렇게 어려워? 그냥 함수를 만들면 된다 이렇게 말하면 되는거 아냐? ㅠ)
아래의 plus 함수는 2개의 인자 값을 받는다.
const calculator = {
plus: function(a, b) {
return a + b;
}
}
const plus = calculator.plus(5, 5) //2개의 인자를 가진 함수
console.log(plus); // plus 라는 인자를 가진 얘도 함수
10
코드를 보면, calculator 가 선언되었고 괄호 안에 함수가 들어가 있다.
다른 사칙연산의 예시
// const calculator ={
// multiple: function(a, b){
// return a * b;
// }
// }
// const multiple = calculator.multiple(5, 5);
// console.log(multiple);
// const calculator = {
// subtract: function(a, b){
// return a - b;
// }
// }
// const subtract = calculator.subtract(10, 5);
// console.log(subtract);
// const calculator = {
// square: function(a, b){
// return a ** b;
// }
// }
// const square = calculator.square(2, 5);
// console.log(square);
function calculator (a, b) {
return a * b;
}
const multiple = calculator (5, 5);
console.log(multiple);
이게 더 편한 방법 아닌가? 너무 어렵게 만드넴?