함수(Functions)

혜빈·2024년 4월 24일

JS

목록 보기
14/21

함수(function)

  • 계속 반복해서 사용할 수 있는 코드 조각

  • 어떤 코드를 캡슐화해서 실행을 여러번 할 수 있게 해줌

  • 만약 아래와 같이 반복되는 코드를 하나하나 다 작성해줘야 한다면 비효율적임

console.log("Hello, my name is been");
console.log("Hello, my name is Lee");
console.log("Hello, my name is kim");
console.log("Hello, my name is hyebeen");
console.log("Hello, my name is seong");
  • 이럴때 함수를 사용하면 효율적으로 코드를 작성할 수 있음

함수를 만드는 방법

function 키워드 사용하기

  • 규칙 1) ()가 필요함
  • 규칙 2) 코드 블록이 필요함 { }
function sayHello() {
	코드 블록
    // 이곳에 작성하는 것이 sayHello를 실행할 때마다 실행됨
}
function sayHello(){
	console.log("Hello!");
    };
  • sayHello의 실행을 누를 때마다 console.log("Hello!")가 실행 됨

함수를 실행하는 방법은?

  • ( )를 사용해서 실행하면 됨
sayHello();
sayHello();
sayHello();
  • 이렇게 하면 3번 실행됨

argument(인수)

  • 만약 "Hello my name is" 다음에 다른 이름들이 나오도록 하려면 인수가 필요함
  • 인수는 함수를 실행하는 동안 어떤 정보를 함수에게 보낼 수 있는 방법임

함수 데이터 받는 방법

  • 함수이름 다음의 ()에 데이터를 추가하면 됨
  • 원하는 어떤 이름과 변수이름이든 넣어도 됨
function sayHello(받을 데이터 추가하기) {
	console.log("Hello my name is")}
function sayHello(nameOfPerson) {
	console.log(nameOfPerson);
};

sayHello("been"); // been
sayHello("Lee"); // Lee
sayHello("seong"); //seong
  • 첫번째 argument로 어떤 데이터가 들어오면 nameOfPerson이라는 변수 이름을 쓰게 되는 것임

  • argument는 추가 할 수 있음

function sayHello(nameOfPerson, age) {
	console.log(nameOfPerson);
};

sayHello("been", 28);
sayHello("Lee", 30);
sayHello("seong", 18);
  • 위 코드에서는 sayHello function은 2개의 argumnet를 받고 있음
  • 첫번째는 string이 되는 것이고, 두번째는 age가 되는 것임
  • nameOfPerson과 age는 function의 body 안에서만 존재함
function sayHello(nameOfPerson, age) {
	console.log("Hello my name is" + nameOfPerson + " and I'm" + age);
};

sayHello("been", 28); // Hello my name is been and I'm 28
sayHello("Lee", 30); // Hello my name is Lee and I'm 30
sayHello("seong", 18); // Hello my name is seong and I'm 18
  • 위 코드에서 function sayHello 뒤의 () 안으로 argument를 받고, sayHello()로 argument를 보내는 것임
function plus(a, b) {
	console.log(a + b);
}

plus(1, 2); // 3
  • 1과 2를 argument로 보내면 a자리에 1이 들어오고 b 자리에 2가 들어와서 a + b가 콘솔에 출력이 됨

  • a와 b는 { } 내부 코드블록에만 존재하기 때문에 plus 함수 밖에서 console.log(a + b)를 하면 존재하지 않는다고 나옴

object 안의 function 호출하기

const player = {
	name: "been",
    sayHello: function (otherPersonsName) {
    	console.log("Hello " + otherPersonsName + " nice to meet you";
        }
};

console.log(player.name); // been
player.sayHello("hyebeen"); // Hello hyebeen nice to meet you
player.sayHello("Lee"); // Hello Lee nice to meet you
profile
최강 개발자를 꿈꾸는 병아리

0개의 댓글