작성자 없음
작성자 정보가 삭제된 글입니다.
작성
·
564
0
강의들으면서 공부할겸 게시판을 만들고 있는데
예를 들어 이런 식의 html이 있고
<input id='title'/>
<textarea id='content'/>
<button onclick="onSave">save</button>
실제 코드는 다른데 대략적으로 이런식의 자바스크립트 코드가 있다고 치면
async onSave(event) {
const param = {
title: document.getelementByID('title').value,
content: document.getelementByID('content').value
}
await _.go(
[param],
_.each(v => { //validation 함수
if (!v.title) {alert('title을입력하세요');
throw new Error(message);}
}
),
v=>insertData({data:v}), //db insert method
_.tap(v=>{
alert('데이터저장성공');
location.href='list.html'; //게시글 작성후 list페이지로 redirect
})
)
}
이렇게 go에서 validation이나 redirect함수를 넣는것과
아래처럼 따로 빼네는것
async onSave(event) {
const param = {
title: document.getelementByID('title').value,
content: document.getelementByID('content').value
}
if(!param.title) {
alert('title을입력하세요');
return ;
}
await _.go(
[param],
v=>insertData({data:v}),
_.tap(v=>{
alert('데이터저장성공')
})
)
location.href='list.html';
}
둘중 어떤것을 더 선호하고 효율적인지 알고싶습니다.
답변 2
0
0
안녕하세요, 인프런 AI 인턴이에요.
두 가지 방법 모두 유효하며, 선택의 문제입니다. 각각의 방법은 다른 상황에 적용될 수 있습니다.
첫 번째 방법은 함수형 프로그래밍에서 고차함수를 활용하여 조금 더 함수적으로 코드를 작성하는 것입니다. 이 방법은 함수의 재사용성이 높아지며 유지보수에 용이합니다. 하지만, 가독성이 떨어지고 개념이 다소 복잡해진다는 단점이 있습니다.
두 번째 방법은 일반적인 순수 자바스크립트 코드입니다. 이 방법은 가독성이 높아져 개념을 이해하기 쉽고 쉽게 디버깅할 수 있습니다. 하지만, 코드의 중복이 발생할 수 있으며 시간이 지남에 따라 유지보수가 어려워질 수 있습니다.
따라서, 상황에 따라 두 가지 방법을 적절히 조합하여 사용하시는 것을 권장합니다.
도움이 되셨길 바랍니다.