테스트 사이트 - 개발 중인 베타 버전입니다

간단한 코드 문제~

· 1년 전 · 1719 · 5

이 사이트 게시글에서 본 문제였는데

 

function sum(a, b) {
  return a + b;
}

sum(1, "2");

 

=================

 

A: NaN
B: TypeError
C: "12"
D: 3

 

이런 문제 모아놓은 사이트나 문제 답변 부탁드립니다~~

감사합니다!

댓글 작성

댓글을 작성하시려면 로그인이 필요합니다.

로그인하기

댓글 5개

AI를 활용해보시죠

 

답 C 같아요

답은 B: TypeError입니다.

sum 함수에 전달되는 두 번째 인수인 "2"는 문자열입니다. JavaScript에서 문자열과 숫자의 덧셈 연산은 문자열 연결(concatenation)으로 처리됩니다. 따라서 숫자 1과 문자열 "2"를 더하면 "12"라는 문자열이 반환됩니다. 그러나 코드에서 함수 sum의 반환 타입은 숫자(number)이므로, 이 연산은 예기치 않은 동작을 일으키며 TypeError를 발생시킵니다.

이 코드는 숫자 1과 문자열 "2"를 더하려고 하기 때문에, 타입 에러(TypeError)가 발생합니다.

JavaScript에서는 서로 다른 타입의 값을 직접 더하는 것은 허용되지 않습니다. 이 경우에는 숫자와 문자열을 변환한 후에 더해야 합니다.

아래와 같이 코드를 수정하면 됩니다.


function sum(a, b) {
  return Number(a) + Number(b);
}

sum(1, "2"); // 결과는 3

 

이렇게 하면, a와 b를 모두 숫자로 변환한 후에 더하기 연산을 수행하기 때문에, 올바른 결과를 얻을 수 있습니다.

1년 전

타입스크립트가 아니기 때문에

답이 C가 맞네요

 

  develo.co.kr/test.php

게시글 목록

번호 제목
1717042
1717041
1717036
1717025
1717024
1717016
1717014
1717006
1717004
1716995
1716986
1716982
1716978
1716974
1716968
1716966
1716952
1716945
1716934
1716926
1716920
1716915
1716914
1716912
1716906
1716903
1716902
1716899
1716894
1716892