JavaScript test

Goun Seo·2021년 9월 12일
0

1. 짝수인지 판별하는 함수 isEven을 작성 해주세요.
console.log(isEven(11)) //-->"짝수가 아닙니다."
console.log(isEven(10)) //-->"짝수 입니다."

function isEven(num){
if (num%2 ==0) { 
  return "짝수 입니다."}
  else { return "짝수가 아닙니다."}
  

isEven은 함수는 주어진 숫자가 짝수인지 확인해서 반환한다.
산술 연산자 % (나머지)를 사용해서 조건문으로 풀이한다.

*% 연산자 두 피연산자를 나눴을 때의 나머지를 반환한다.
ex) 10%2 는 0을 반환


2. calculateTotal 함수를 작성하세요.
팁과 세금을 제외한 식사값이 주어졌을때, calculateTotal 함수는
팁과 세금이 포함된 총 식사값을 반환합니다.

  • 세금은 9.5% 팁은 15%로 계산하세요.
  • 팁을 계산할때 세금을 포함하여 계산하지 마세요.

console.log(calculateTotal(20)); //--> 24.9

function calculateTotal(num){
  const tax = (num *9.5)/ 100;
  const tip = (num *15)/100;
  return num +tax+tip;
}

*퍼센트 계산 = 전체값 x 퍼센트 ÷ 100


3. getPrefix 함수를 작성하세요.
문자열이 주어졌을때, -를 기준으로 앞에 있는 문자열을 반환하세요.

console.log(getPrefix))// -->BTC

function getPrefix (str){
  const arr = str.split("-");
  return arr[0];
}

문자열을 뜻하는 str을 매개변수로 넣고 , split() 문자열 분할하는 메서드 사용
변수명.split('구분의 기준이 되는 문자열')


4.getFind 함수를 작성하세요.
문자와 문자열이 주어졌을때, getFind 함수는 주어진 문자열에서
주어진 문자가 나타나는 첫번째 위치를 반환합니다.

notes: 문자열의 첫번째 문자는 인덱스 값 0을 가집니다. 만약 문자열에 해당 문자가 여러번 나타나면, 첫번째로 나타나는 위치를 반환해야 합니다.
만약 문자가 문자열에 존재하지 않는다면, -1을 반환해야 합니다.

중요!! indexof 함수를 사용하지 마세요.

const output = getFind('a', 'I am a hacker')
console.log(output) // -->2

function getFind(index,str){
  return (str.includes(index)) ? str.search(index) : -1
}

삼항연산자, includes, search 메소드 이용한 문제
문자열에 a가 포함된다는 전제로 search를 이용해 몇번째 인지 알려주고
존재하지 않으면 -1 로 반환


5. find_logest_word 함수를 만들어 주세요.
주어진 리스트안에 있는 단어중 가장 긴 단어를 찾을 수 있도록 함수를
완성해주세요.

console.log(find_longest_word(["PHP", Exercises","Backend"]))
// --> "Exercises"

function find_longest_word(arr){
  let maxLength = arr[0];
  arr.forEach((item) => {
    if(item.length > maxLength.length){
      maxLength = item;
    }
  });
  return maxLength;
}

maxLength 변수를 만들어서 첫번째 배열값을 넣고 반복문 사용해서
maxlength 보다 item.length가 더 크면 item을 maxLength에 넣고 반환한다.

시험 결과는 좋지 않았지만, 자바스크립트 복습 하는 의미에서 문제 풀이 했다.
문제 접근 방식이 떠오르면 문법 일부분이 생각이 안나거나 풀었던 기억이 있는데 어떻게 풀었는지 떠오르지 않거나 적용이 안되는 상황이다. 아직 개념이 잘 안잡힌거 같다.
개념도 다시 보면서 문제도 많이 접해봐야 해결이 될 것 같다. 😥
😱지치면 안된다! 아직 할게 많다!! 😱

profile
그리다 보면 ~ ♪

0개의 댓글