✓
Component-Based Architecture: React breaks the UI into small, independent, and reusable pieces called components. This allows developers to build complex interfaces by nesting these self-contained units.
✓
Virtual DOM: Instead of updating the entire webpage for every change, React creates a "Virtual DOM" (a lightweight copy of the real DOM) in memory. It identifies only the parts that changed and updates the browser efficiently, which significantly boosts performance.
✓
JSX (JavaScript XML): An extension to JavaScript syntax that looks like HTML. While optional, it is the standard way to write React components because it makes code more readable and expressive.
✓
One-Way Data Binding: Data in React flows in a single direction—from parent components to child components via props (properties). This makes applications more predictable and easier to debug.
✓
State Management: Each component can have its own state, which holds data that might change over time (e.g., text in an input field). When the state changes, React automatically re-renders the component to reflect the update