Post

①함수를 호출하면 콘솔에 텍스트를 출력하는 text 함수를 만든다.

JavaScript

function text() {
  console.log("콘솔에 텍스트 출력");
}

 

②이 함수를 호출하기 위해 text를 입력하면?

function text() {
  console.log("콘솔에 텍스트 출력");
}
text;

콘솔은 아무 값도 출력하지 않는다.

 

③왜 아무 값도 출력하지 않는지 살펴보면?

function text() {
  console.log("콘솔에 텍스트 출력");
}
console.log(text);    // [Function: text]

콘솔은 [Function: text]를 출력한다. JavaScript에서는 함수가 객체로 취급되기에, text만 달랑 있으면 객체로 취급된다는 것!

 

④그렇다면 괄호()를 써보면?

function text() {
  console.log("콘솔에 텍스트 출력");
}
text();   // 콘솔에 텍스트 출력

콘솔에 텍스트가 정상적으로 출력된다. 즉, ()까지 써줘야 함수가 정상적으로 호출된다.

 

text()는 대체 뭐하는 얘?

function text() {
  console.log("콘솔에 텍스트 출력");
}
console.log(text());    // 콘솔에 텍스트 출력
                                      // undefined

이 경우, 먼저 text()가 작동해 콘솔에 텍스트 출력이 표시되고 text()의 정체가 undefined라는 것을 알려준다. JavaScript에서 함수의 매개변수는 undefined가 기본이다. 따라서 값이 명시되지 않으면 기본값인 undefined를 반환한다.

 

⑥그럼 return을 사용해 값을 지정해주면?

function text() {
  console.log("콘솔에 텍스트 출력");
  return "빵꾸똥꾸";
}
console.log(text());  // 콘솔에 텍스트 출력
                                    // 빵꾸똥꾸

return으로 값을 반환시켰기에 기본값이 undefined 대신 "빵꾸똥꾸"가 콘솔에 출력되었다.

'JavaScript related' 카테고리의 다른 글

JavaScript Number vs parseInt  (0) 2023.01.21
JavaScript Return  (0) 2023.01.21
JavaScript querySelector & querySelectorAll  (0) 2023.01.21
JavaScript Examples Mouse Hover Menu  (0) 2023.01.19
JavaScript Basic Control  (0) 2023.01.19
▲ top