• 카테고리

    질문 & 답변
  • 세부 분야

    풀스택

  • 해결 여부

    해결됨

안녕하세요 제로초님 자바스크립트 애로우 함수 문법 질문 드려봐요

22.08.22 15:28 작성 조회수 117

1

안녕하세요. 자바스크립트 애로우함수에 대해 질문드립니다.

let a = [1, 2, 3, 4, 5];
let b = 3;

a = a.filter((x) => {
if (b !== x) {
return x
}
});
이것과
a = a.filter(x => b !== x);
이것이 같다는것은 알고 있습니다. 그렇다면
a = a.filter(x => b !== x);
a = a.filter((x) => b !== x);

이 차이점은 무엇인가요?

답변 1

답변을 작성해보세요.

0

a = a.filter(x => b !== x);
a = a.filter((x) => b !== x);

둘은 똑같습니다. 매개변수가 하나면 ()를 생략할 수 있습니다.

 

a = a.filter((x) => {
if (b !== x) {
return x
}

 

});
이것과
a = a.filter(x => b !== x);
는 서로 다릅니다.
정문채님의 프로필

정문채

질문자

2022.08.22

아 매개변수가 하나면 괄호생략 한거였군요. 감사합니다. 그런데

a = a.filter((x) => {

if (b !== x) {
return x
}

 

});
이것과
a = a.filter(x => b !== x);
이 왜 다른건가요?
자동으로 리턴해주는게 아닌가요?

return x 하셔서 다릅니다. return b !== x로 같아야 합니다.

정문채님의 프로필

정문채

질문자

2022.08.22

결과값은 같게 나오는데도 다른걸까요?

문법적으로는 a.filter((x) => {
  return b !== x;
});

입니다. 

정문채님의 프로필

정문채

질문자

2022.08.22

아하 답변 감사합니다 :)