You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
Web-Dev-For-Beginners/translations/ko/2-js-basics/2-functions-methods/assignment.md

4.9 KiB

Fun with Functions

Instructions

이번 과제에서는 JavaScript 함수, 매개변수, 기본값, 반환문에 대해 배운 개념들을 강화하기 위해 다양한 종류의 함수를 만들어보는 연습을 합니다.

functions-practice.js라는 JavaScript 파일을 만들어 다음 함수를 구현하세요:

Part 1: Basic Functions

  1. sayHello라는 이름의 함수를 만드세요. 이 함수는 매개변수를 받지 않고 단순히 콘솔에 "Hello!"를 출력합니다.

  2. introduceYourself라는 이름의 함수를 만드세요. 이 함수는 name 매개변수를 받아서 "Hi, my name is [name]" 같은 메시지를 콘솔에 출력합니다.

Part 2: Functions with Default Parameters

  1. greetPerson라는 이름의 함수를 만드세요. 이 함수는 두 개의 매개변수를 받습니다: name (필수)와 greeting (선택적, 기본값은 "Hello"). 함수는 "[greeting], [name]!" 같은 메시지를 콘솔에 출력해야 합니다.

Part 3: Functions that Return Values

  1. addNumbers라는 이름의 함수를 만드세요. 이 함수는 두 개의 매개변수 (num1num2)를 받아 이들의 합을 반환합니다.

  2. createFullName라는 이름의 함수를 만드세요. 이 함수는 firstNamelastName 매개변수를 받아서 전체 이름을 하나의 문자열로 반환합니다.

Part 4: Mix It All Together

  1. calculateTip라는 이름의 함수를 만드세요. 이 함수는 두 개의 매개변수를 받습니다: billAmount (필수)와 tipPercentage (선택적, 기본값은 15). 함수는 팁 금액을 계산하여 반환해야 합니다.

Part 5: Test Your Functions

각 함수를 테스트하기 위해 함수 호출을 추가하고 console.log()를 사용하여 결과를 표시하세요.

예시 테스트 호출:

// 여기에서 함수를 테스트하세요
sayHello();
introduceYourself("Sarah");
greetPerson("Alex");
greetPerson("Maria", "Hi");

const sum = addNumbers(5, 3);
console.log(`The sum is: ${sum}`);

const fullName = createFullName("John", "Doe");
console.log(`Full name: ${fullName}`);

const tip = calculateTip(50);
console.log(`Tip for $50 bill: $${tip}`);

Rubric

Criteria Exemplary Adequate Needs Improvement
Function Creation 모든 6개 함수가 올바른 문법과 이름 규칙으로 정확히 구현됨 4-5개 함수가 약간의 문법 오류와 함께 올바르게 구현됨 3개 이하의 함수만 구현되었거나 심각한 문법 오류 존재
Parameters & Default Values 요구되는 매개변수와 선택 매개변수, 기본값을 정확히 사용함 매개변수는 올바르게 사용하지만 기본값에는 약간의 문제 있음 매개변수 구현이 잘못되었거나 누락됨
Return Values 값을 반환해야 하는 함수는 정확히 반환하며, 반환하지 않아야 하는 함수는 동작만 수행함 대부분의 반환값이 정확하지만 약간의 문제 있음 반환문 관련 심각한 문제 존재
Code Quality 깔끔하고 잘 조직된 코드, 의미 있는 변수명과 적절한 들여쓰기 사용 코드가 동작하지만 더 깔끔하거나 조직적일 수 있음 읽기 어려운 코드 또는 잘못 구조화된 코드
Testing 모든 함수가 적절한 함수 호출로 테스트되어 결과가 명확하게 표시됨 대부분의 함수가 적절히 테스트됨 함수 테스트가 제한적이거나 부정확함

Bonus Challenges (Optional)

추가 도전을 원한다면:

  1. 함수 중 하나에 대해 화살표 함수 버전을 만드세요
  2. 다른 함수를 매개변수로 받는 함수를 만드세요 (예: 강의의 setTimeout 예제처럼)
  3. 입력 검증을 추가하여 함수가 잘못된 입력을 우아하게 처리하도록 하세요

💡 : 브라우저 개발자 콘솔(F12)을 열어 console.log() 문 출력 결과를 확인하는 것을 잊지 마세요!


면책 조항:
이 문서는 AI 번역 서비스 Co-op Translator를 사용하여 번역되었습니다. 정확성을 위해 노력하고 있으나, 자동 번역은 오류나 부정확한 내용이 포함될 수 있음을 유의하시기 바랍니다. 원문 문서가 공식적인 자료로 간주되어야 합니다. 중요한 정보의 경우 전문 인간 번역을 권장합니다. 본 번역 사용으로 인한 어떠한 오해나 오해에 대해서도 당사는 책임을 지지 않습니다.