e.target.value (이거 보면 된다)

Henrique·2024년 10월 10일

JS 짧막 지식들

목록 보기
12/14
post-thumbnail

e.target.value는 일반적으로 HTML 폼 요소에서 사용자가 입력한 값을 가져오거나 처리할 때 사용됩니다. e는 이벤트 객체를 의미하고, target은 이벤트가 발생한 요소를 가리킵니다. value는 그 요소의 값입니다.

주로 input, textarea, select와 같은 폼 요소에서 사용자 입력을 처리할 때 많이 사용됩니다. 예를 들어, React에서 폼 입력을 다룰 때 다음과 같은 방식으로 e.target.value를 사용합니다.

function InputComponent() {
  const [inputValue, setInputValue] = useState("");

  const handleChange = (e) => {
    setInputValue(e.target.value);  // 사용자가 입력한 값을 상태로 업데이트
  };

  return (
    <input type="text" value={inputValue} onChange={handleChange} />
  );
}

위 코드에서 e.target.value는 사용자가 텍스트 필드에 입력한 값을 가져와 inputValue 상태를 업데이트하는 역할을 합니다.

따라서 e.target.value는 폼 요소에서 발생한 이벤트에 따라 그 요소의 현재 값을 가져오기 위해 사용됩니다.



네! 그럼 e.target.value가 어떻게 동작하는지 단계별로 설명하겠습니다. 아래 코드를 기준으로 설명을 드리겠습니다.

function InputComponent() {
  const [inputValue, setInputValue] = useState("");

  const handleChange = (e) => {
    setInputValue(e.target.value);
  };

  return (
    <input type="text" value={inputValue} onChange={handleChange} />
  );
}
1.	이벤트 객체 (e)
	•	이 함수에서 e는 이벤트 객체입니다.
	•	이벤트 객체는 React에서 자동으로 전달되는 객체로, 사용자가 input에 무언가를 입력할 때 발생하는 이벤트 정보를 담고 있습니다. e는 일반적으로 “event”의 약자로 사용됩니다.
	•	이 객체는 이벤트가 발생한 요소에 대한 다양한 정보를 가지고 있으며, 사용자가 한 행동(입력, 클릭, 제출 등)에 대한 세부 사항을 포함합니다.
2.	e.target
	•	이벤트 객체 e 안에는 여러 속성이 있습니다. 그 중 하나가 target입니다.
	•	**e.target**은 이벤트가 발생한 요소, 즉 사용자가 상호작용한 HTML 요소를 가리킵니다.
	•	여기서는 사용자가 상호작용한 <input> 요소가 e.target이 됩니다. 즉, e.target은 <input> 태그 그 자체를 가리킨다고 볼 수 있습니다.
	•	만약 버튼을 클릭했다면, e.target은 버튼 요소가 될 것입니다.
3.	e.target.value
	•	**e.target.value**는 target이 가리키는 HTML 요소의 값을 의미합니다.
	•	여기서는 input 요소의 현재 입력된 값을 가리킵니다.
	•	예를 들어, 사용자가 <input>에 “hello”를 입력하면, e.target.value는 "hello"가 됩니다.
	•	이 값은 상태(inputValue)로 업데이트되어 화면에 표시됩니다.

코드 흐름 설명:

1.	사용자가 input 필드에 무언가를 입력하면, onChange 이벤트가 발생합니다.
2.	그때 handleChange 함수가 호출되면서, 그 이벤트에 대한 정보가 e에 담겨 함수로 전달됩니다.
3.	e.target은 사용자가 상호작용한 <input> 요소를 가리킵니다.
4.	e.target.value는 사용자가 입력한 값을 나타냅니다. 이 값을 setInputValue 함수로 상태를 업데이트하는 데 사용합니다.
이 흐름을 통해 사용자의 입력이 실시간으로 상태로 반영되고, 그 상태가 다시 <input> 필드의 값으로 연결됩니다.

0개의 댓글