,
로 구분해 여러개 추가 가능 : console.log(hello1, hello2, hello3)
* 조건
/매개변수가 없는 함수
function hello() {
console.log("Hello, Js");
}
hello(); // "Hello, Js"
* 조건
/매개변수가 없는 함수
function hello(name) {
console.log(`Hello, ${name}`);
}
hello(); // Hello, undifined
hello("Joe"); // Hello, Joe
hello("Js"); // Hello, Js
function sayHello(name){
console.log(name);
let msg = `hello`;
if(name) {
msg = `Hello, ${name}`; .....//msg += `, ${name}`);(축약 작성가능)
}
console.log(msg);
}
sayHello(); // Hello
sayHello("Joe"); // Hello, Joe
if
문을 써서 true
를 확인해야 if
문 실행undefined
가 반환되므로if
문은 실행되지 않음console.log(msg);
실행function sayHello(name = "friend") {
let msg = `Hello, ${name}`;
console.log(msg);
}
sayHello(); // Hello, friend
sayHello("Joe"); // Hello, Joe
=
할당하여 기본 값을 정해줄 수 있다.function add(num1, num2) {
return num1 + num2;
}
add(4, 24) ..// 28
return
문은 return
오른쪽 값을 반환하고 함수 종료sayHello();
function sayHello() {
console.log("Hello");
}
sayHello
와 같은 함수를 사용할 수 있는 범위는 코드 위치보다 올라간다 = (Hoisting)let sayHello = function() {
console.log("Hello");
}
sayHello();
1.이름이 없는 함수 만들기
2.변수를 선언
3.함수를 할당
-> 함수 표현식
함수를 호출할 수 있는 타이밍이 다름
javascript는 위에서 아래로 차례대로 읽으면서 실행(cascading)
이렇게 순차적으로 실행되고 즉시 결과를 반환하는 언어 =( interpreted language )
함수 선언문이 보다 자유롭고 편하게 작업가능
* 기존 함수 작성법
let add = function(num1, num2) {
return num1 + num2;
}
* 1. 화살표 함수
let add = (num1, num2) => {
return num1 + num2;
}
function
사라지고 =>
추가* 2. 화살표 함수
let add = (num1, num2) => (
num1 + num2;
)
return
문 이기 때문에 위 작성법도 허용* 3.1 화살표 함수
let add = (num1, num2) => num1 + num2;
return
문이 한줄이라면 위와 같이 한번더 축약 가능* 3.2 화살표 함수
let sayHello = (name) => `Hello, ${name}`;
* 괄호 생략
>> let sayHello = name => `Hello, ${name}`;
* 3.3 화살표 함수
let sayHello = () => {
console.log("Hello");
}
- 인수가 없는 함수 : 괄호 생략 불가
* 3.4
let add = function(num1, num2) {
const result = num1 + num2;
return result;
}
return
문이 있다고 해도 return
문 위에 여러줄의 코드가 있을 경우 괄호 생략 불가