// 가정해보자
// 이건 누군가가 만들어놓은 API임. 안보인다고 쳐 (String처럼 rgrg)
function someApi(variationName){
console.log("실행코드...1");
//....
variationName();
// 이 API를 만든 인간이 이 API를 쓰는사람이 던지는 숫자 등을 받아서 여기다가 쓰겠다는거지 뭐
// --> 내생각 : 나도 STM에서 println직접 만들었었지. 거기에 text를 치는건 user였잖아?
// --> user가 입력한 값을 return해줬던거고.
// --> 콜백받아서 특정 함수 내에서 실행시킬 수 있다는거지~
console.log("실행코드...2");
console.log("실행코드...3");
};
function myFuntion(){
console.log("내가만든 함수");
};
function myFuntion2(){
console.log("내가만든 함수222");
};
someApi(myFuntion);
someApi(myFuntion2);
// ★★★ 함수를 정의하는 3가지 방법 ★★★
// 1. Named Function : 이름을 명시적으로 지정한 함수
// --> 내가 호출하기 위한 용도
// --> 함수 이름을 사용하여 함수를 호출할 수 있다
function qwer11(){
console.log("named function");
};
qwer11();
// 2. Anonymous Function (익명 함수): 함수에 이름을 지정하지 않은 함수
// --> 주로 다른 함수 내에서 사용하거나 변수에 할당하여 사용
const anonymous = function (x, y){
console.log("anonymous function");
};
anonymous(); // --> 변수에 익명 함수를 받아서 호출한거지뭐
// 3. Arrow Function (= 람다식)
// --> JS에서는 람다식 필수 ㅠ_ㅠ
// 3-1.
const square = (x) => x * x;
console.log(square(8));
// 3-2.
const qwer3 = () => {
console.log("arrow function");
// return 2252;
};
console.log(qwer3());
// 출력 : arrow function, undefined
// --> log내용이랑, return해주는게 없으니까 undefined
// ★콜백으로 활용시?
// CASE 1. named function
setTimeout(qwer11, 3000);
// CASE 2. anonymous function
setTimeout(function(){
console.log("콜백-anonymous");
}, 6000);
// CASE 3. arrow function
setTimeout(() => {
console.log("콜백-arrow");
}, 9000);
'JavaScript > DAY 34 _ 23.10.11' 카테고리의 다른 글
함수 Basic (0) | 2023.10.11 |
---|---|
배열 (0) | 2023.10.11 |
조건/반복문 (1) | 2023.10.11 |
연산자 (0) | 2023.10.11 |
변수 (0) | 2023.10.11 |