๋ณธ๋ฌธ ๋ฐ”๋กœ๊ฐ€๊ธฐ
Javascript

ํ•จ์ˆ˜์˜ ์œ ํ˜•

by oranssy 2022. 8. 23.
728x90
๋ฐ˜์‘ํ˜•

โญ๏ธ ํ•จ์ˆ˜์˜ ์œ ํ˜• โญ๏ธ


01. ํ•จ์ˆ˜์™€ ๋งค๊ฐœ๋ณ€์ˆ˜๋ฅผ ์ด์šฉํ•œ ํ˜•ํƒœ

    function func(num, str1, str2){
        document.write("(" + num + ") " + str1 + "๊ฐ€ " + str2 + "๋˜์—ˆ์Šต๋‹ˆ๋‹ค.")
    }
    func("13-1", "ํ•จ์ˆ˜", "์‹คํ–‰");
    func("13-2", "์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ", "์ถ”๊ฐ€");
    func("13-3", "์ œ์ด์ฟผ๋ฆฌ", "์‚ญ์ œ");
๊ฒฐ๊ณผ ๋ณด๊ธฐ
(13-1) ํ•จ์ˆ˜๊ฐ€ ์‹คํ–‰๋˜์—ˆ์Šต๋‹ˆ๋‹ค.(13-2) ์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ๊ฐ€ ์ถ”๊ฐ€๋˜์—ˆ์Šต๋‹ˆ๋‹ค.(13-3) ์ œ์ด์ฟผ๋ฆฌ๊ฐ€ ์‚ญ์ œ๋˜์—ˆ์Šต๋‹ˆ๋‹ค.

02. ํ•จ์ˆ˜์™€ ๋ณ€์ˆ˜๋ฅผ ์ด์šฉํ•œ ํ˜•ํƒœ

    const mynum1 = 14*1;
    const mynum2 = 14*2;
    const mynum3 = 14*3;
    const mystr1 = "ํ•จ์ˆ˜";
    const mystr2 = "์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ";
    const mystr3 = "์ œ์ด์ฟผ๋ฆฌ";
    const mycom1 = "์‹คํ–‰";
    const mycom2 = "์ถ”๊ฐ€";
    const mycom3 = "์‚ญ์ œ";

    func(mynum1, mystr1, mycom1);
    func(mynum2, mystr2, mycom2);
    func(mynum3, mystr3, mycom3);
๊ฒฐ๊ณผ ๋ณด๊ธฐ
(14*1) ํ•จ์ˆ˜๊ฐ€ ์‹คํ–‰๋˜์—ˆ์Šต๋‹ˆ๋‹ค.(14*2) ์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ๊ฐ€ ์ถ”๊ฐ€๋˜์—ˆ์Šต๋‹ˆ๋‹ค.(14*3) ์ œ์ด์ฟผ๋ฆฌ๊ฐ€ ์‚ญ์ œ๋˜์—ˆ์Šต๋‹ˆ๋‹ค.

03. ํ•จ์ˆ˜์™€ ๋ฐฐ์—ด, ๊ฐ์ฒด๋ฅผ ์ด์šฉํ•œ ํ˜•ํƒœ

    const info = [
    {
        num : "15*1",
        name : "ํ•จ์ˆ˜",
        com : "์‹คํ–‰"
    },
    {
        num : "15*2",
        name : "์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ",
        com : "์ถ”๊ฐ€"
    },
    {
        num : "15*3",
        name : "์ œ์ด์ฟผ๋ฆฌ",
        com : "์‚ญ์ œ"
    }
];

func(info[0].num, info[0].name, info[0].com);
func(info[1].num, info[1].name, info[1].com);
func(info[2].num, info[2].name, info[2].com);
๊ฒฐ๊ณผ ๋ณด๊ธฐ
(15*1) ํ•จ์ˆ˜๊ฐ€ ์‹คํ–‰๋˜์—ˆ์Šต๋‹ˆ๋‹ค.(15*2) ์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ๊ฐ€ ์ถ”๊ฐ€๋˜์—ˆ์Šต๋‹ˆ๋‹ค.(15*3) ์ œ์ด์ฟผ๋ฆฌ๊ฐ€ ์‚ญ์ œ๋˜์—ˆ์Šต๋‹ˆ๋‹ค.

04. ๊ฐ์ฒด ์•ˆ์— ๋ณ€์ˆ˜์™€ ํ•จ์ˆ˜๋ฅผ ์ด์šฉํ•œ ํ˜•ํƒœ

    const info = {
        num1 : 16*1,
        name1 : "ํ•จ์ˆ˜",
        word1 : "์‹คํ–‰",
        num2 : 16*2,
        name2 : "์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ",
        word2 : "์ถ”๊ฐ€",
        num3 : 16*3,
        name3 : "์ œ์ด์ฟผ๋ฆฌ",
        word3 : "์‚ญ์ œ",

        result1: function(){
            document.write(info.num1 + "] " + info.name1 + "๊ฐ€ " + info.word1 + "๋˜์—ˆ์Šต๋‹ˆ๋‹ค.");
        },
        result2: function(){
            document.write(info.num2 + "] " + info.name2 + "๊ฐ€ " + info.word2 + "๋˜์—ˆ์Šต๋‹ˆ๋‹ค.");
        },
        result3: function(){
            document.write(info.num3 + "] " + info.name3 + "๊ฐ€ " + info.word3 + "๋˜์—ˆ์Šต๋‹ˆ๋‹ค.");
        },
    }

    info.result1();
    info.result2();
    info.result3();
๊ฒฐ๊ณผ ๋ณด๊ธฐ
16*1] ํ•จ์ˆ˜๊ฐ€ ์‹คํ–‰๋˜์—ˆ์Šต๋‹ˆ๋‹ค.16*2] ์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ๊ฐ€ ์ถ”๊ฐ€๋˜์—ˆ์Šต๋‹ˆ๋‹ค.16*3] ์ œ์ด์ฟผ๋ฆฌ๊ฐ€ ์‚ญ์ œ๋˜์—ˆ์Šต๋‹ˆ๋‹ค.

05. ๊ฐ์ฒด ์ƒ์„ฑ์ž ํ•จ์ˆ˜

// ๊ฐ์ฒด ์ƒ์„ฑ์ž ํ•จ์ˆ˜.   ์œ„์˜ ์‹๋“ค์ด ๋ถˆํŽธํ•ด์„œ ๋‚˜์˜จ ์ตœ์ข… ๋‹จ๊ณ„. ์ œ์ผ ๋งŽ์ด ์‚ฌ์šฉํ•จ.
    // ๋ฉ”๋ชจ๋ฆฌ๋ฅผ ๋‚˜๋ˆ  ์‚ฌ์šฉํ•˜์ง€ ๋ชปํ•ด์„œ ๋Š๋ ค์ง. ๋ฉ”์ธ์—์„œ ์‚ฌ์šฉํ•˜๋Š” ํ•จ์ˆ˜ vs ์„œ๋ธŒ์—์„œ ์‚ฌ์šฉํ•˜๋Š” ํ•จ์ˆ˜

        function func(num, name, word){
            this.num = num;         // ์›๋ž˜๋Š” ์•ž์— const ๊ฐ€ ๋ถ™์–ด์žˆ์–ด์•ผ ํ•˜๋Š”๋ฐ ์ƒ๋žตํ•˜๊ณ , this๋ฅผ ์ ์–ด์คŒ.  const num = num; 
            this.name = name;       // this๋Š” ์žฌํ™œ์šฉ ๊ฐ€๋Šฅํ•˜๊ฒŒ ๋งŒ๋“ค์–ด์คŒ. ๋ฐ์ดํ„ฐ๋ฅผ ์ฐจ๊ณก์ฐจ๊ณก ์ €์žฅ.
            this.word = word;

            this.result = function(){
                document.write(this.num + ". " + this.name + "๊ฐ€ " + this.word + "๋˜์—ˆ์Šต๋‹ˆ๋‹ค.");
            }
        }

        // ์ธ์Šคํ„ด์Šค ์ƒ์„ฑ
        const info1 = new func("17-1", "ํ•จ์ˆ˜", "์‹คํ–‰");
        const info2 = new func("17-2", "์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ", "์ถœ๋ ฅ");
        const info3 = new func("17-3", "์ œ์ด์ฟผ๋ฆฌ", "์‚ญ์ œ");

        // ์‹คํ–‰
        info1.result();
        info2.result();
        info3.result();   
๊ฒฐ๊ณผ ๋ณด๊ธฐ
17-1. ํ•จ์ˆ˜๊ฐ€ ์‹คํ–‰๋˜์—ˆ์Šต๋‹ˆ๋‹ค.17-2. ์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ๊ฐ€ ์ถœ๋ ฅ๋˜์—ˆ์Šต๋‹ˆ๋‹ค.17-3. ์ œ์ด์ฟผ๋ฆฌ๊ฐ€ ์‚ญ์ œ๋˜์—ˆ์Šต๋‹ˆ๋‹ค.

06. ํ”„๋กœํ† ํƒ€์ž… ํ•จ์ˆ˜

// ํ”„๋กœํ† ํƒ€์ž… ํ•จ์ˆ˜ -> ์‹คํ–‰ํ•˜๊ณ  ์‹ถ์€ ํ•จ์ˆ˜๋งŒ ์‹คํ–‰ํ•˜์—ฌ ๋ฉ”๋ชจ๋ฆฌ๋ฅผ ์•„๋‚Œ

        function func(num, name, word){
            this.num = num;
            this.name = name;
            this.word = word;
        }
        
        func.prototype.result = function(){
                document.write(this.num + "* " + this.name + "๊ฐ€ " + this.word + "๋˜์—ˆ์Šต๋‹ˆ๋‹ค.");
            }

        // ์ธ์Šคํ„ด์Šค ์ƒ์„ฑ
        const info1 = new func("18-1", "ํ•จ์ˆ˜", "์‹คํ–‰");
        const info2 = new func("18-2", "์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ", "์ถœ๋ ฅ");
        const info3 = new func("18-3", "์ œ์ด์ฟผ๋ฆฌ", "์‚ญ์ œ");

        // ์‹คํ–‰
        info1.result();
        info2.result();
        info3.result(); 
๊ฒฐ๊ณผ ๋ณด๊ธฐ
18-1* ํ•จ์ˆ˜๊ฐ€ ์‹คํ–‰๋˜์—ˆ์Šต๋‹ˆ๋‹ค.18-2* ์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ๊ฐ€ ์ถœ๋ ฅ๋˜์—ˆ์Šต๋‹ˆ๋‹ค.18-3* ์ œ์ด์ฟผ๋ฆฌ๊ฐ€ ์‚ญ์ œ๋˜์—ˆ์Šต๋‹ˆ๋‹ค.

07. ๊ฐ์ฒด ๋ฆฌํ„ฐ๋Ÿด ํ•จ์ˆ˜

// ๊ฐ์ฒด ๋ฆฌํ„ฐ๋Ÿด ํ•จ์ˆ˜. ์ฃฝ์€ ๋ฌธ๋ฒ•์ด๋ผ ์ž˜ ์‚ฌ์šฉํ•˜์ง€ ์•Š์ง€๋งŒ, ๊ฐ€๋” ์‚ฌ์šฉํ•˜๋Š” ๊ฑธ ๋ณผ ์ˆ˜ ์žˆ์Œ.

        function func(num, name, word){
            this.num = num;
            this.name = name;
            this.word = word;
        }

        func.prototype = {
            result1 : function(){
                document.write(this.num + "# " + this.name + "๊ฐ€ " + this.word + "๋˜์—ˆ์Šต๋‹ˆ๋‹ค.");
            },
            result2 : function(){
                document.write(this.num + "# " + this.name + "๊ฐ€ " + this.word + "๋˜์—ˆ์Šต๋‹ˆ๋‹ค.");
            },
            result3 : function(){
                document.write(this.num + "# " + this.name + "๊ฐ€ " + this.word + "๋˜์—ˆ์Šต๋‹ˆ๋‹ค.");
            }
        }

        // ์ธ์Šคํ„ด์Šค ์ƒ์„ฑ
        const info1 = new func("19-1", "ํ•จ์ˆ˜", "์‹คํ–‰");
        const info2 = new func("19-2", "์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ", "์ถœ๋ ฅ");
        const info3 = new func("19-3", "์ œ์ด์ฟผ๋ฆฌ", "์‚ญ์ œ");

        // ์‹คํ–‰
        info1.result1();
        info2.result2();
        info3.result3();
๊ฒฐ๊ณผ ๋ณด๊ธฐ
19-1# ํ•จ์ˆ˜๊ฐ€ ์‹คํ–‰๋˜์—ˆ์Šต๋‹ˆ๋‹ค.19-2# ์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ๊ฐ€ ์ถœ๋ ฅ๋˜์—ˆ์Šต๋‹ˆ๋‹ค.19-3# ์ œ์ด์ฟผ๋ฆฌ๊ฐ€ ์‚ญ์ œ๋˜์—ˆ์Šต๋‹ˆ๋‹ค.
728x90
๋ฐ˜์‘ํ˜•

๋Œ“๊ธ€