JAVASCRIPT/자바스크립트

JS. 0415 오답노트

(*ᴗ͈ˬᴗ͈)ꕤ*.゚ 2022. 4. 15. 11:17

개요

금요일이 돌아왔고

 

코로나로 인해 그간 시험을 못쳤지만이제부턴 무조건 친다고 한다

 

공부좀 할걸 ㅜㅜ 근데 정말 시간이 없다

 

문제

function func(){
  let i = 0;
  let j = 0;

  for(i = 0; i <= 8; i++){
    j += i;
  }
  document.write(j + i);
}
func();

정답 : 45

 

j는 1부터 8까지 모두 더한 값이라 36이 나오고

i는 9가 나와서

결과 값은 j + i = 45가 나온다

 

문제

function func() {
    let a = 12;
    let b = 8;
    let c = 2;
    let d = 3;
    a /= b - c * d;
    document.write(a);
}

func();

정답 6

 

순서대로 연산을 하면 되는 줄 알았으나...

=을 기준으로 오른쪽을 모두 하고 해야한다 

 

즉, (a /= b) - (c * d)가 아니라 a /= (b - c * d) 이란 말이다 ...ㅜ

 

문제

function func() {
  let i = 0;
  let sum = 0;

  while (0) {
    i++;
    if (i > 10) break;
    if (i % 5 == 0) continue;
    sum += i;
  }
  document.write(sum);
}

정답 : 0

 

0은 false...이다ㅜ

문제를 안풀어도 될 정도의 간다한 문제였다

 

문제

function func(n){
  let answer;
  answer = Math.floor(n/12);
  return answer;
}

document.write(func(178));

정답: 14

 

round: 반올림 ceil: 올림 floor: 버림 trunc: 정수만 반환...ㅜ

 

문제

function solution(arr, divisor) {
  let answer = [];

  const div = arr.filter((el) => el % divisor == 0);
  answer = div.length > 0 ? div.sort((a, b) => a - b) : [-1];

  return answer;
}
document.write(solution([1, 2, 3, 4, 5], 2));

 

정답: 2,4

 

a-b라서 뺴는 건줄 알았는데 오름차순으로 정렬하는 거였다

난 바보다

 

문제

function solution(n){
  for(let i = 1; i < n; i++){
    if(n%i === 1) return i;
  }
}
document.write(solution(10));

정답: 3

 

그 외

- for of 문자열이 익숙하지않았다

- toString -> 문자열로 바꿔 줌