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

간단한 코드 문제~

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

게시글 목록

번호 제목
1717629
1717626
1717625
1717621
1717619
1717611
1717610
1717609
1717607
1717601
1717598
1717591
1717590
1717583
1717575
1717572
1717568
1717566
1717549
1717545
1717533
1717512
1717511
1717508
1717495
1717479
1717473
1717470
1717463
1717452