해결된 질문
작성
·
162
0
이 질문은 학습용임으로 사용목적에 대해서 답변을 구하는것은 아닙니다.
function onChangePasword(e){}
위와 같이 사용도 가능하지만
const onChangeEmail = function (event) {}
와 같이 익명함수로도 선언이 가능하자나요?
질문코자 하는 내용은 아래와 같이 default 로 생성시 error 가 발생합니다.
onChangeEmail = function (event) {}
또한 화살표 함수를 사용시에도 동일한 문제가 발생합니다.const onChangeEmail = (event) => {} 정상
onChangeEmail = (event) => {} error
이유가 뭔가요?
답변 1
0
안녕하세요! gkdlsb1234님!
함수를 만드는 방법에는 크게 3가지 방법이 있습니다!
1. 함수선언식: function qqq(){}
2. 함수표현식: const qqq = function(){}
3. 화살표함수: const qqq = () => {}
따라서, 앞에 function 또는 const(let, var 도 가능) 등이 붙어야 해요!
제 생각에 gkdlsb1234님께서 이러한 질문을 하신 이유는 React의 class컴포넌트 사용시 만들었던 함수의 방식과 혼동을 하고 계신 것이라 생각이 듭니다.
class나 객체 안에서도 역시 함수를 만들 수 있는데, 우리는 이러한 함수를 메소드라고 불러요!
관련된 내용은 뒷부분 class 컴포넌트 수업에서 진행합니다!
간략히만 설명을 드리면, class 또는 객체 안에서 메소드를 만드시는 경우에는 다음과 같이 작성 가능합니다!
// 클래스에서 메소드 만들기
class 나의컴포넌트 extends Component {
aaa() {
}
bbb = () => {
}
}
// 객체에서 메소드 만들기
const 나의프로필 = {
age: 12,
school: "다람쥐초등학교",
aaa(){
},
bbb: () => {
}
}
반대로 이와 같은 메소드의 경우에는 const나 function을 붙일 수 없답니다!^^