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

간단한 코드 문제~

· 1년 전 · 1718 · 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

게시글 목록

번호 제목
1717438
1717431
1717422
1717414
1717412
1717407
1717401
1717393
1717386
1717379
1717378
1717365
1717364
1717360
1717359
1717346
1717344
1717333
1717327
1717313
1717312
1717310
1717307
1717306
1717304
1717291
1717283
1717280
1717268
1717265