ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • [Javascript] ν•¨μˆ˜,인수,인자,ν™”μ‚΄ν‘œν•¨μˆ˜
    μ›Ή/JavaScript 2023. 1. 10. 14:43

    πŸ’‘ κΈ°λ³Έ 문법

    function ν•¨μˆ˜λͺ… (μž…λ ₯κ°’) {
    // μˆ˜ν–‰ν•  일
    return λ°˜ν™˜κ°’ // μžˆμ„ μ‹œ
    }
    ​
    ν•¨μˆ˜λͺ…(μž…λ ₯κ°’);

     


     

    I. ν•¨μˆ˜λ₯Ό μ‚¬μš©ν•œλ‹€λŠ” 것

    1. 반볡될 수 μžˆλŠ” μž‘μ—…μ„ μ •μ˜ν•΄λ‘λŠ” 것

    // ν•¨μˆ˜ μ‚¬μš© μ „
    let a = 3, b = 4;
    ​
    console.log(`${a} + ${b} = ${a + b}`);
    console.log(`${a} - ${b} = ${a - b}`);
    console.log(`${a} * ${b} = ${a * b}`);
    console.log(`${a} / ${b} = ${a / b}`);
    ​
    let c = 10, d = 2;
    ​
    console.log(`${c} + ${d} = ${c + d}`);
    console.log(`${c} - ${d} = ${c - d}`);
    console.log(`${c} * ${d} = ${c * d}`);
    console.log(`${c} / ${d} = ${c / d}`);
    ​
    let e = 7, f = 5;
    ​
    console.log(`${e} + ${f} = ${e + f}`);
    console.log(`${e} - ${f} = ${e - f}`);
    console.log(`${e} * ${f} = ${e * f}`);
    console.log(`${e} / ${f} = ${e / f}`);

     

    function allArithemics (x, y) {
    console.log(`${x} + ${y} = ${x + y}`);
    console.log(`${x} - ${y} = ${x - y}`);
    console.log(`${x} * ${y} = ${x * y}`);
    console.log(`${x} / ${y} = ${x / y}`);
    }
    ​
    let a = 3, b = 4;
    allArithemics(a, b);
    ​
    let c = 10, d = 2;
    allArithemics(c, d);
    ​
    let e = 7, f = 5;
    allArithemics(e, f);



    2. input을 λ°›μ•„ output을 λ°˜ν™˜ return ν•˜λŠ” 것

    function add(x, y) {
    return x + y; // ⭐️ 값을 λ°˜ν™˜
    }
    ​
    let z = add(2, 3);
    ​
    console.log(z);

     

    console.log(add(4, 5));

     

    console.log(
    add(add(6, 7), add(8, 9))
    );




    function isOdd (x) {
    return !!(x % 2);
    }
    ​
    let num = 12;
    ​
    console.log(
    `${num}(λŠ”)은 ${
    isOdd(num) ? '홀' : '짝'
    }μˆ˜μž…λ‹ˆλ‹€.`
    );



    a. input으둜 λ°›λŠ” κ°’ - μΈμˆ˜μ™€ μΈμž

    function add(x, y) {
    // x, yλ₯Ό 인자 λ˜λŠ” λ§€κ°œλ³€μˆ˜(parameter)라 뢀름
    return x + y;
    }
    ​
    // a, bλ₯Ό 인수(argument)라 뢀름
    let z = add(2, 3);
    • μΌλ°˜μ μœΌλ‘œλŠ” ꡳ이 κ΅¬λΆ„ν•˜μ§€ μ•Šκ³  ν˜Όμš©ν•΄μ„œ μ‚¬μš©ν•¨

     

    b. κΌ­ 인자λ₯Ό λ°›κ±°λ‚˜ 값을 λ°˜ν™˜ν•˜λŠ” 것은 μ•„λ‹˜

    let currentTemp = 24.5;
    ​
    function logCurrentTemp () {
    console.log(`ν˜„μž¬ μ˜¨λ„λŠ” 섭씨 ${currentTemp}λ„μž…λ‹ˆλ‹€.`);
    }
    ​
    console.log('λ°˜ν™˜κ°’:', logCurrentTemp());
    • return λ¬Έμ΄ μ •μ˜λ˜μ–΄ μžˆμ§€ μ•ŠμœΌλ©΄ undefined λ°˜ν™˜
    • πŸ’‘ console.log μ‹€ν–‰ λ’€ undefinedκ°€ λœ¨λŠ” 이유

     

    c. ⭐️ return문은 κΌ­ λ§ˆμ§€λ§‰μ—

    function add (x, y) {
    console.log(`${x}와 ${y}λ₯Ό λ”ν•©λ‹ˆλ‹€.`);
    return x + y;
    console.log(`κ²°κ³ΌλŠ” ${x + y}μž…λ‹ˆλ‹€.`);
    }
    ​
    console.log(add(2, 7));

     

    d. πŸ’‘ ν˜Έμ΄μŠ€νŒ… hoisting

    // ν•¨μˆ˜λŠ” 싀행문보닀 λ‚˜μ€‘μ— μ •μ˜ν•˜λŠ” 것이 κ°€λŠ₯
    // λ³€μˆ˜λ‚˜ μƒμˆ˜λŠ” λΆˆκ°€λŠ₯! (var μ œμ™Έ)
    console.log(add(2, 7));
    ​
    function add (x, y) {
    return x + y;
    }




     

    II. ν•¨μˆ˜λ₯Ό μ •μ˜ν•˜λŠ” 방법듀

    1. ν•¨μˆ˜ μ„ μ–Έ

    function add (x, y) {
    return x + y;
    }
    ​
    console.log(add(2, 7));

    2. μƒμˆ˜λ‚˜ λ³€μˆ˜μ— ν•¨μˆ˜ λŒ€μž… ν•¨μˆ˜λ„ κ°’

    const subt = function (x, y) {
    return x - y;
    }
    ​
    console.log(subt(7, 2));




    function add (x, y) {
    return x + y;
    }
    ​
    console.log(add(2, 7));

     

    // πŸ’‘ 기쑴의 ν•¨μˆ˜λ₯Ό μž¬μ •μ˜ν•˜λŠ”κ²ƒλ„ κ°€λŠ₯
    add = function (x, y) {
    console.log(`${x}와 ${y}λ₯Ό λ”ν•©λ‹ˆλ‹€.`);
    console.log(`κ²°κ³ΌλŠ” ${x + y}μž…λ‹ˆλ‹€.`);
    return x + y;
    }
    ​
    console.log(add(2, 7));

    3. ν™”μ‚΄ν‘œ ν•¨μˆ˜

    // ν•œ 쀄 μ•ˆμ— κ°’λ§Œ λ°˜ν™˜μ‹œ
    const mult = (x, y) => x * y;
    ​
    console.log(mult(2, 7));

     

    // 두 쀄 μ΄μƒμ˜ μž‘μ—…μ΄ μžˆμ„ μ‹œ
    const mult = (x, y) => {
    console.log(`${x}와 ${y}λ₯Ό κ³±ν•©λ‹ˆλ‹€.`);
    console.log(`κ²°κ³ΌλŠ” ${x * y}μž…λ‹ˆλ‹€.`);
    return x * y;
    };
    ​
    console.log(mult(2, 7));

     

    // μΈμžκ°€ ν•˜λ‚˜μΌ λ•ŒλŠ” κ΄„ν˜Έ 없이 μ„ μ–Έ κ°€λŠ₯
    const pow = x => x ** 2;
    console.log(pow(3));
    • ⚠️ ν™”μ‚΄ν‘œ ν•¨μˆ˜λŠ” function μ„ μ–Έ ν•¨μˆ˜μ™€ κΈ°λŠ₯ 차이가 있음 μ΄ν›„ 닀름



    ⚠️ 2번과 3번 λ°©λ²•μœΌλ‘œ μ„ μ–Έν•œ ν•¨μˆ˜λŠ” ν˜Έμ΄μŠ€νŒ…λ˜μ§€ μ•ŠμŒ

    console.log(div(8, 4));
    ​
    const div = function (x, y) {
    return x / y;
    }

     

    console.log(div(8, 4));
    ​
    const div = (x, y) => x / y;

    πŸ’‘ ν•¨μˆ˜ 생성 μ‹œμ μ΄ λ‹€λ₯΄κΈ° λ•Œλ¬Έ

    • 1번 λ°©λ²•μœΌλ‘œ μ •μ˜λœ ν•¨μˆ˜λŠ” μ—”μ§„μ˜ μ½”λ“œ μ‹€ν–‰ 이전 미리 생성됨
Designed by Tistory.