전체 글56 [javascript] Ajax Ajax란?Ajax란 자바스크립트를 사용하여 브라우저가 서버에게 비동기 방식으로 데이터를 요청하고, 서버가 응답한 데이터를 수신하여 웹페이지를 동적으로 갱신하는 프로그래밍 방식을 말한다. ajax는 브라우저에서 제공하는 Web API인 XMLHttpRequest 객체를 기반으로 동작한다. XMLHttpRequest는 HTTP 비동기 통신을 위한 메서드와 프로퍼티를 제공한다. 기존의 웹페이지는 완전한 HTML을 서버로부터 전송받아 웹페이지 전체를 처음부터 다시 렌더링하는 방식으로 동작했다. 이러한 방식은 불필요한 데이터 통신을 야기했으며, 화면 전환 시에 깜박이는 현상을 초래했고, 클라이언트와 서버 사이의 통신이 동기 방식으로 동작하여 서버의 응답이 있을 때까지 다음 처리는 블로킹되었다. ajax 방식의 .. 2025. 12. 17. [React] 컴포넌트의 라이프사이클 (Lifecycle) 리액트의 모든 컴포넌트는 생명 주기를 갖는다. 이는 크게 마운트(생성) > 업데이트 > 언마운트(제거)의 세 단계로 구분하는데, 함수형 컴포넌트에서는 useEffect를 사용, 클래스형 컴포넌트에서는 생명 주기 메서드를 사용하여 생명 주기에 맞춘 코드를 작성할 수 있다. 클래스형 컴포넌트 생명 주기 관리 1. 마운트 시 호출되는 메서드constructor: 컴포넌트가 마운트 되기 전에 호출된다. this.state에 객체를 할당하여 state를 초기화하고, 인스턴스에 이벤트 처리 메서드를 바인딩한다.getDerivedStateFromProps: 컴포넌트가 최초 마운트될 때와 업데이트될 때 호출된다. state를 갱신하기 위한 객체를 반환하거나, null을 반환하여 아무것도 갱신하지 않을 수 있다. .. 2025. 12. 16. [React] List 렌더링과 key 리액트에서는 유사한 형태의 여러 데이터를 순회형 데이터로 만들어 간편하게 JSX를 렌더링 할 수 있다. 배열 데이터 렌더링 콘솔에 key prop 에러가 뜬 것을 볼 수 있다. map() 메서드로 렌더링 된 JSX 요소들은 반드시 고유의 key 속성을 가지고 있어야 한다. 이는 추후에 데이터가 삭제, 수정될 때 기존의 순서나 불변 데이터를 올바르게 유지하기 위해 쓰인다. key 값은 같은 map() 메서드로부터 렌더링 되는 배열의 요소들 간에는 고유해야 하나, 다른 데이터나 배열로부터 렌더링 된 JSX 요소의 key 값과는 중복되어도 무관하다. 구조화된 데이터 필터링 데이터에 포함된 값을 key 값에 할당해 주었다. 그 외에 컴포넌트 내에서 uuid (crypto.randomUUID) 등과 같은 값을 .. 2023. 6. 29. [React] 조건부 렌더링 리액트에서 조건문을 잘 활용하면 원하는 동작을 캡슐화하는 컴포넌트를 만들 수 있다. 그 방식은 조건부로 JSX를 반환하거나 JSX 구문을 조건문에 포함하는 두 가지로 나뉜다. 1. 조건부로 JSX 반환하기1) 조건별 항목 구분 2) 조건에 따라 아무것도 반환하지 않는 컴포넌트 2. 조건문에 JSX 포함하기1) 삼항연산자 활용 2) 논리곱 연산자 활용 3) JSX를 조건부로 할당 2023. 6. 23. [React] 이벤트 처리하기_2 Event Propagation in React리액트의 이벤트는 DOM을 타고 전파되는 특성이 있다.function Toolbar() { return ( { alert('You clicked on the toolbar!'); }}> alert('Playing!')}> Play Movie alert('Uploading!')}> Upload Image );}위와 같이 button 태그를 감싼 div 태그에 이벤트가 부착되어 있을 때 button 태그를 클릭할 경우 div 태그의 이벤트도 같이 실행된다. 이를 이벤트 전파 또는 이벤트 버블링이라 한다. (onScroll 이벤트는 해당 태그에서만 실행된다. 이를 .. 2023. 5. 8. 이전 1 2 3 4 5 ··· 12 다음