{"componentChunkName":"component---src-templates-blog-js","path":"/blog/react/react_20200315/","result":{"data":{"markdownRemark":{"html":"<h1>React Basic - (1) React의 개념과 JSX</h1>\n<blockquote>\n<p>React를 배우기 전에..</p>\n</blockquote>\n<p>일반적인 브라우저의 Workflow는 다음과 같다.</p>\n<p><img src=\"../mdimg/react_20200315.png\" alt=\"img\"></p>\n<p>출처 : <a href=\"https://velopert.com/3236\">https://velopert.com/3236</a></p>\n<p>HTML, CSS 기반의 DOM을 작성하면, 병렬적으로 DOM Tree와 Style Rules가 생성되며</p>\n<p>이를 합친 모델로 Render Tree가 생성되는 것이다.</p>\n<blockquote>\n<p>하지만 DOM Tree에 새로운 노드가 추가되거나 View에 변화가 생기면 ?</p>\n</blockquote>\n<ol>\n<li>DOM 조작이 많이 발생하는 경우 View에 변화를 주기 위한 함수를 직접 정의하고, 변화 내용을 전부 기억해야 하기 때문에 비효율적이다.</li>\n<li>작업 변화를 바탕으로 Render Tree를 재생성해야 하므로 성능에 악영향을 미친다.</li>\n</ol>\n<blockquote>\n<p>React를 사용하면 무엇이 다른가?</p>\n</blockquote>\n<p>React는 Virtual DOM을 이용한다.</p>\n<p>작업에 변화가 생기면, 이 Virtual DOM 에서 Rendering을 하고, 기존의 DOM과 비교를 한 후 변화가 일어난 곳만 업데이트한다.</p>\n<p>즉, React는 웹 어플리케이션을 Maintainable하게 만들고, 대부분의 경우 충분히 빠르기 때문에,</p>\n<p>프론트엔드 개발자 입장에선 칭찬할 수 밖에 없는 Framework 이다.</p>\n<p>React와 Virtual DOM의 개념을 잘 설명한 영상</p>\n<p>(<a href=\"https://www.youtube.com/watch?v=muc2ZF0QIO4\">https://www.youtube.com/watch?v=muc2ZF0QIO4</a>)</p>\n<blockquote>\n<p>hello-react 파헤치기</p>\n</blockquote>\n<ul>\n<li>App.js</li>\n<li>함수형</li>\n</ul>\n<div class=\"gatsby-highlight\" data-language=\"javascript\"><pre style=\"counter-reset: linenumber NaN\" class=\"language-javascript line-numbers\"><code class=\"language-javascript\"><span class=\"token keyword\">import</span> React<span class=\"token punctuation\">,</span> <span class=\"token punctuation\">{</span> Component <span class=\"token punctuation\">}</span> <span class=\"token keyword\">from</span> <span class=\"token string\">\"react\"</span><span class=\"token punctuation\">;</span>\n<span class=\"token keyword\">import</span> logo <span class=\"token keyword\">from</span> <span class=\"token string\">\"./logo.svg\"</span><span class=\"token punctuation\">;</span>\n<span class=\"token keyword\">import</span> <span class=\"token string\">\"./App.css\"</span><span class=\"token punctuation\">;</span>\n\n<span class=\"token comment\">// function 함수이름 : 함수를 통해서 Component를 만들어 줌.</span>\n<span class=\"token keyword\">function</span> <span class=\"token function\">App</span><span class=\"token punctuation\">(</span><span class=\"token punctuation\">)</span> <span class=\"token punctuation\">{</span>\n    <span class=\"token comment\">// 반드시 JSX를 return해주어야 함.</span>\n    <span class=\"token keyword\">return</span> <span class=\"token punctuation\">(</span>\n        <span class=\"token operator\">&lt;</span>div className<span class=\"token operator\">=</span><span class=\"token string\">\"App\"</span><span class=\"token operator\">></span>\n            <span class=\"token operator\">&lt;</span>header className<span class=\"token operator\">=</span><span class=\"token string\">\"App-header\"</span><span class=\"token operator\">></span>\n                <span class=\"token operator\">&lt;</span>img src<span class=\"token operator\">=</span><span class=\"token punctuation\">{</span>logo<span class=\"token punctuation\">}</span> className<span class=\"token operator\">=</span><span class=\"token string\">\"App-logo\"</span> alt<span class=\"token operator\">=</span><span class=\"token string\">\"logo\"</span> <span class=\"token operator\">/</span><span class=\"token operator\">></span>\n                <span class=\"token operator\">&lt;</span>p<span class=\"token operator\">></span>\n                    Edit <span class=\"token operator\">&lt;</span>code<span class=\"token operator\">></span>src<span class=\"token operator\">/</span>App<span class=\"token punctuation\">.</span>js<span class=\"token operator\">&lt;</span><span class=\"token operator\">/</span>code<span class=\"token operator\">></span> and save to reload<span class=\"token punctuation\">.</span>\n                <span class=\"token operator\">&lt;</span><span class=\"token operator\">/</span>p<span class=\"token operator\">></span>\n                <span class=\"token operator\">&lt;</span>p<span class=\"token operator\">></span>Okay<span class=\"token operator\">&lt;</span><span class=\"token operator\">/</span>p<span class=\"token operator\">></span>\n                <span class=\"token operator\">&lt;</span>a\n                    className<span class=\"token operator\">=</span><span class=\"token string\">\"App-link\"</span>\n                    href<span class=\"token operator\">=</span><span class=\"token string\">\"https://reactjs.org\"</span>\n                    target<span class=\"token operator\">=</span><span class=\"token string\">\"_blank\"</span>\n                    rel<span class=\"token operator\">=</span><span class=\"token string\">\"noopener noreferrer\"</span>\n                <span class=\"token operator\">></span>\n                    Paige\n                <span class=\"token operator\">&lt;</span><span class=\"token operator\">/</span>a<span class=\"token operator\">></span>\n            <span class=\"token operator\">&lt;</span><span class=\"token operator\">/</span>header<span class=\"token operator\">></span>\n        <span class=\"token operator\">&lt;</span><span class=\"token operator\">/</span>div<span class=\"token operator\">></span>\n    <span class=\"token punctuation\">)</span><span class=\"token punctuation\">;</span>\n<span class=\"token punctuation\">}</span>\n<span class=\"token keyword\">export</span> <span class=\"token keyword\">default</span> App<span class=\"token punctuation\">;</span></code><span aria-hidden=\"true\" class=\"line-numbers-rows\" style=\"white-space: normal; width: auto; left: 0;\"><span></span><span></span><span></span><span></span><span></span><span></span><span></span><span></span><span></span><span></span><span></span><span></span><span></span><span></span><span></span><span></span><span></span><span></span><span></span><span></span><span></span><span></span><span></span><span></span><span></span><span></span><span></span><span></span></span></pre></div>\n<ol start=\"2\">\n<li>클래스형</li>\n</ol>\n<div class=\"gatsby-highlight\" data-language=\"javascript\"><pre style=\"counter-reset: linenumber NaN\" class=\"language-javascript line-numbers\"><code class=\"language-javascript\"><span class=\"token keyword\">import</span> React<span class=\"token punctuation\">,</span> <span class=\"token punctuation\">{</span> Component <span class=\"token punctuation\">}</span> <span class=\"token keyword\">from</span> <span class=\"token string\">\"react\"</span><span class=\"token punctuation\">;</span>\n<span class=\"token keyword\">import</span> logo <span class=\"token keyword\">from</span> <span class=\"token string\">\"./logo.svg\"</span><span class=\"token punctuation\">;</span>\n<span class=\"token keyword\">import</span> <span class=\"token string\">\"./App.css\"</span><span class=\"token punctuation\">;</span>\n\n<span class=\"token comment\">// 클래스 형태로 만든 Component</span>\n<span class=\"token keyword\">class</span> <span class=\"token class-name\">App</span> <span class=\"token keyword\">extends</span> <span class=\"token class-name\">Component</span> <span class=\"token punctuation\">{</span>\n    <span class=\"token comment\">// 클래스 형태의 Component에는 반드시 render()를 정의해야 한다.</span>\n    <span class=\"token comment\">// render() 안에는 JSX를 return해야 함.</span>\n    <span class=\"token function\">render</span><span class=\"token punctuation\">(</span><span class=\"token punctuation\">)</span> <span class=\"token punctuation\">{</span>\n        <span class=\"token keyword\">return</span> <span class=\"token punctuation\">(</span>\n            <span class=\"token operator\">&lt;</span>div className<span class=\"token operator\">=</span><span class=\"token string\">\"App\"</span><span class=\"token operator\">></span>\n                <span class=\"token operator\">&lt;</span>header className<span class=\"token operator\">=</span><span class=\"token string\">\"App-header\"</span><span class=\"token operator\">></span>\n                    <span class=\"token operator\">&lt;</span>img src<span class=\"token operator\">=</span><span class=\"token punctuation\">{</span>logo<span class=\"token punctuation\">}</span> className<span class=\"token operator\">=</span><span class=\"token string\">\"App-logo\"</span> alt<span class=\"token operator\">=</span><span class=\"token string\">\"logo\"</span> <span class=\"token operator\">/</span><span class=\"token operator\">></span>\n                    <span class=\"token operator\">&lt;</span>p<span class=\"token operator\">></span>Class로 만든 Component<span class=\"token operator\">&lt;</span><span class=\"token operator\">/</span>p<span class=\"token operator\">></span>\n                    <span class=\"token operator\">&lt;</span>p<span class=\"token operator\">></span>Okay<span class=\"token operator\">&lt;</span><span class=\"token operator\">/</span>p<span class=\"token operator\">></span>\n                    <span class=\"token operator\">&lt;</span>a\n                        className<span class=\"token operator\">=</span><span class=\"token string\">\"App-link\"</span>\n                        href<span class=\"token operator\">=</span><span class=\"token string\">\"https://reactjs.org\"</span>\n                        target<span class=\"token operator\">=</span><span class=\"token string\">\"_blank\"</span>\n                        rel<span class=\"token operator\">=</span><span class=\"token string\">\"noopener noreferrer\"</span>\n                    <span class=\"token operator\">></span>\n                        Paige\n                    <span class=\"token operator\">&lt;</span><span class=\"token operator\">/</span>a<span class=\"token operator\">></span>\n                <span class=\"token operator\">&lt;</span><span class=\"token operator\">/</span>header<span class=\"token operator\">></span>\n            <span class=\"token operator\">&lt;</span><span class=\"token operator\">/</span>div<span class=\"token operator\">></span>\n        <span class=\"token punctuation\">)</span><span class=\"token punctuation\">;</span>\n    <span class=\"token punctuation\">}</span>\n<span class=\"token punctuation\">}</span>\n<span class=\"token keyword\">export</span> <span class=\"token keyword\">default</span> App<span class=\"token punctuation\">;</span>\n<span class=\"token comment\">// 작성한 컴포넌트를 다른 곳에서 불러와서 사용 할 수 있도록 내보내기를 해줌 (반드시 필요 !)</span></code><span aria-hidden=\"true\" class=\"line-numbers-rows\" style=\"white-space: normal; width: auto; left: 0;\"><span></span><span></span><span></span><span></span><span></span><span></span><span></span><span></span><span></span><span></span><span></span><span></span><span></span><span></span><span></span><span></span><span></span><span></span><span></span><span></span><span></span><span></span><span></span><span></span><span></span><span></span><span></span><span></span><span></span><span></span></span></pre></div>\n<ul>\n<li>index.js</li>\n</ul>\n<div class=\"gatsby-highlight\" data-language=\"javascript\"><pre style=\"counter-reset: linenumber NaN\" class=\"language-javascript line-numbers\"><code class=\"language-javascript\"><span class=\"token keyword\">import</span> React<span class=\"token punctuation\">,</span> <span class=\"token punctuation\">{</span> Component <span class=\"token punctuation\">}</span> <span class=\"token keyword\">from</span> <span class=\"token string\">\"react\"</span><span class=\"token punctuation\">;</span>\n<span class=\"token comment\">// 브라우저 상에 React Component를 보여주기 위해서 ReactDOM 사용</span>\n<span class=\"token keyword\">import</span> ReactDOM <span class=\"token keyword\">from</span> <span class=\"token string\">\"react-dom\"</span><span class=\"token punctuation\">;</span>\n<span class=\"token keyword\">import</span> <span class=\"token string\">\"./index.css\"</span><span class=\"token punctuation\">;</span>\n<span class=\"token comment\">// 직접 만든 Component를 불러올 때, import함</span>\n<span class=\"token keyword\">import</span> App <span class=\"token keyword\">from</span> <span class=\"token string\">\"./App\"</span><span class=\"token punctuation\">;</span>\n<span class=\"token keyword\">import</span> <span class=\"token operator\">*</span> <span class=\"token keyword\">as</span> serviceWorker <span class=\"token keyword\">from</span> <span class=\"token string\">\"./serviceWorker\"</span><span class=\"token punctuation\">;</span>\n\n<span class=\"token comment\">// ReactDOM.render() 함수 :</span>\n<span class=\"token comment\">//   첫번째 파라미터는 렌더링 할 결과물,</span>\n<span class=\"token comment\">//   두번째 파라미터는 컴포넌트를 어떤 DOM 에 그릴지 정해주는 것</span>\nReactDOM<span class=\"token punctuation\">.</span><span class=\"token function\">render</span><span class=\"token punctuation\">(</span>\n    <span class=\"token operator\">&lt;</span>React<span class=\"token punctuation\">.</span>StrictMode<span class=\"token operator\">></span>\n        <span class=\"token operator\">&lt;</span>App <span class=\"token operator\">/</span><span class=\"token operator\">></span>\n    <span class=\"token operator\">&lt;</span><span class=\"token operator\">/</span>React<span class=\"token punctuation\">.</span>StrictMode<span class=\"token operator\">></span><span class=\"token punctuation\">,</span>\n    <span class=\"token comment\">// id 가 'root'인 DOM을 찾아서 그림 => public/index.html 에 정의됨</span>\n    document<span class=\"token punctuation\">.</span><span class=\"token function\">getElementById</span><span class=\"token punctuation\">(</span><span class=\"token string\">\"root\"</span><span class=\"token punctuation\">)</span>\n<span class=\"token punctuation\">)</span><span class=\"token punctuation\">;</span>\n\nserviceWorker<span class=\"token punctuation\">.</span><span class=\"token function\">unregister</span><span class=\"token punctuation\">(</span><span class=\"token punctuation\">)</span><span class=\"token punctuation\">;</span></code><span aria-hidden=\"true\" class=\"line-numbers-rows\" style=\"white-space: normal; width: auto; left: 0;\"><span></span><span></span><span></span><span></span><span></span><span></span><span></span><span></span><span></span><span></span><span></span><span></span><span></span><span></span><span></span><span></span><span></span><span></span><span></span><span></span></span></pre></div>\n<blockquote>\n<p>JSX 란?</p>\n</blockquote>\n<p>JSX = JavaScript + XML</p>\n<p>리액트 개발을 쉽게 하기 위해서, HTML형태로 작성하면 이를 React.createElement 를 사용하는 JavaScript 형태로 변환시켜주는, 일종의 JavaScript 문법의 확장판.</p>\n<ul>\n<li>JSX의 조건</li>\n<li>닫는 태그가 반드시 있어야 함.</li>\n<li>여러 개의 element를 하나로 합치는 element 가 있어야 함. (ex. <div> / <Fragment>)</li>\n</ul>\n<blockquote>\n<p>JSX 내부에서 사용하는 변수 타입의 종류</p>\n</blockquote>\n<ul>\n<li>const : 선언 후 바뀌지 않는 값을 위해 사용</li>\n<li>let : 선언 후 바뀌는 값을 위해 사용</li>\n</ul>\n<p>⇒ 기본적으로 두가지 모두 block 단위이다. (var은 함수 단위.)</p>\n<blockquote>\n<p>JSX의 조건부 렌더링</p>\n</blockquote>\n<p>JSX에서는 if문을 사용할 수 없으며,</p>\n<ol>\n<li>삼항연산자</li>\n<li>즉시 실행 함수 (IIFE : Immediately Invoked Function Expression)</li>\n<li>화살표 함수 (arrow function)</li>\n</ol>\n<p>등을 사용할 수 있다.</p>\n<p>예제</p>\n<ol>\n<li>삼항연산자</li>\n</ol>\n<div class=\"gatsby-highlight\" data-language=\"jsx\"><pre style=\"counter-reset: linenumber NaN\" class=\"language-jsx line-numbers\"><code class=\"language-jsx\"><span class=\"token keyword\">import</span> React<span class=\"token punctuation\">,</span> <span class=\"token punctuation\">{</span> Component <span class=\"token punctuation\">}</span> <span class=\"token keyword\">from</span> <span class=\"token string\">\"react\"</span><span class=\"token punctuation\">;</span>\n\n<span class=\"token keyword\">class</span> <span class=\"token class-name\">App</span> <span class=\"token keyword\">extends</span> <span class=\"token class-name\">Component</span> <span class=\"token punctuation\">{</span>\n    <span class=\"token function\">render</span><span class=\"token punctuation\">(</span><span class=\"token punctuation\">)</span> <span class=\"token punctuation\">{</span>\n        <span class=\"token keyword\">return</span> <span class=\"token punctuation\">(</span>\n            <span class=\"token tag\"><span class=\"token tag\"><span class=\"token punctuation\">&lt;</span>div</span><span class=\"token punctuation\">></span></span><span class=\"token punctuation\">{</span><span class=\"token number\">1</span> <span class=\"token operator\">+</span> <span class=\"token number\">1</span> <span class=\"token operator\">===</span> <span class=\"token number\">2</span> <span class=\"token operator\">?</span> <span class=\"token tag\"><span class=\"token tag\"><span class=\"token punctuation\">&lt;</span>div</span><span class=\"token punctuation\">></span></span><span class=\"token plain-text\">Correct</span><span class=\"token tag\"><span class=\"token tag\"><span class=\"token punctuation\">&lt;/</span>div</span><span class=\"token punctuation\">></span></span> <span class=\"token operator\">:</span> <span class=\"token tag\"><span class=\"token tag\"><span class=\"token punctuation\">&lt;</span>div</span><span class=\"token punctuation\">></span></span><span class=\"token plain-text\">Uncorrect</span><span class=\"token tag\"><span class=\"token tag\"><span class=\"token punctuation\">&lt;/</span>div</span><span class=\"token punctuation\">></span></span><span class=\"token punctuation\">}</span><span class=\"token tag\"><span class=\"token tag\"><span class=\"token punctuation\">&lt;/</span>div</span><span class=\"token punctuation\">></span></span>\n        <span class=\"token punctuation\">)</span><span class=\"token punctuation\">;</span>\n    <span class=\"token punctuation\">}</span>\n<span class=\"token punctuation\">}</span>\n\n<span class=\"token keyword\">export</span> <span class=\"token keyword\">default</span> App<span class=\"token punctuation\">;</span></code><span aria-hidden=\"true\" class=\"line-numbers-rows\" style=\"white-space: normal; width: auto; left: 0;\"><span></span><span></span><span></span><span></span><span></span><span></span><span></span><span></span><span></span><span></span><span></span></span></pre></div>\n<div class=\"gatsby-highlight\" data-language=\"jsx\"><pre style=\"counter-reset: linenumber NaN\" class=\"language-jsx line-numbers\"><code class=\"language-jsx\"><span class=\"token keyword\">import</span> React<span class=\"token punctuation\">,</span> <span class=\"token punctuation\">{</span> Component <span class=\"token punctuation\">}</span> <span class=\"token keyword\">from</span> <span class=\"token string\">\"react\"</span><span class=\"token punctuation\">;</span>\n\n<span class=\"token keyword\">class</span> <span class=\"token class-name\">App</span> <span class=\"token keyword\">extends</span> <span class=\"token class-name\">Component</span> <span class=\"token punctuation\">{</span>\n    <span class=\"token function\">render</span><span class=\"token punctuation\">(</span><span class=\"token punctuation\">)</span> <span class=\"token punctuation\">{</span>\n        <span class=\"token keyword\">return</span> <span class=\"token punctuation\">(</span>\n            <span class=\"token tag\"><span class=\"token tag\"><span class=\"token punctuation\">&lt;</span>div</span><span class=\"token punctuation\">></span></span><span class=\"token plain-text\">\n                </span><span class=\"token punctuation\">{</span><span class=\"token number\">1</span> <span class=\"token operator\">+</span> <span class=\"token number\">1</span> <span class=\"token operator\">===</span> <span class=\"token number\">2</span> <span class=\"token operator\">&amp;&amp;</span> <span class=\"token tag\"><span class=\"token tag\"><span class=\"token punctuation\">&lt;</span>div</span><span class=\"token punctuation\">></span></span><span class=\"token plain-text\">Correct</span><span class=\"token tag\"><span class=\"token tag\"><span class=\"token punctuation\">&lt;/</span>div</span><span class=\"token punctuation\">></span></span>\n                <span class=\"token comment\">//\t&amp;&amp; : 조건이 true일 때만 출력됨.</span>\n                <span class=\"token punctuation\">}</span><span class=\"token plain-text\">\n            </span><span class=\"token tag\"><span class=\"token tag\"><span class=\"token punctuation\">&lt;/</span>div</span><span class=\"token punctuation\">></span></span>\n        <span class=\"token punctuation\">)</span><span class=\"token punctuation\">;</span>\n    <span class=\"token punctuation\">}</span>\n<span class=\"token punctuation\">}</span>\n\n<span class=\"token keyword\">export</span> <span class=\"token keyword\">default</span> App<span class=\"token punctuation\">;</span></code><span aria-hidden=\"true\" class=\"line-numbers-rows\" style=\"white-space: normal; width: auto; left: 0;\"><span></span><span></span><span></span><span></span><span></span><span></span><span></span><span></span><span></span><span></span><span></span><span></span><span></span><span></span><span></span></span></pre></div>\n<ol start=\"2\">\n<li>IIFE 사용</li>\n</ol>\n<div class=\"gatsby-highlight\" data-language=\"jsx\"><pre style=\"counter-reset: linenumber NaN\" class=\"language-jsx line-numbers\"><code class=\"language-jsx\"><span class=\"token punctuation\">(</span><span class=\"token keyword\">function</span><span class=\"token punctuation\">(</span><span class=\"token punctuation\">)</span> <span class=\"token punctuation\">{</span>\n    <span class=\"token keyword\">if</span> <span class=\"token punctuation\">(</span>value <span class=\"token operator\">===</span> <span class=\"token number\">1</span><span class=\"token punctuation\">)</span> <span class=\"token keyword\">return</span> <span class=\"token tag\"><span class=\"token tag\"><span class=\"token punctuation\">&lt;</span>div</span><span class=\"token punctuation\">></span></span><span class=\"token plain-text\">하나</span><span class=\"token tag\"><span class=\"token tag\"><span class=\"token punctuation\">&lt;/</span>div</span><span class=\"token punctuation\">></span></span><span class=\"token punctuation\">;</span>\n    <span class=\"token keyword\">if</span> <span class=\"token punctuation\">(</span>value <span class=\"token operator\">===</span> <span class=\"token number\">2</span><span class=\"token punctuation\">)</span> <span class=\"token keyword\">return</span> <span class=\"token tag\"><span class=\"token tag\"><span class=\"token punctuation\">&lt;</span>div</span><span class=\"token punctuation\">></span></span><span class=\"token plain-text\">둘</span><span class=\"token tag\"><span class=\"token tag\"><span class=\"token punctuation\">&lt;/</span>div</span><span class=\"token punctuation\">></span></span><span class=\"token punctuation\">;</span>\n    <span class=\"token keyword\">if</span> <span class=\"token punctuation\">(</span>value <span class=\"token operator\">===</span> <span class=\"token number\">3</span><span class=\"token punctuation\">)</span> <span class=\"token keyword\">return</span> <span class=\"token tag\"><span class=\"token tag\"><span class=\"token punctuation\">&lt;</span>div</span><span class=\"token punctuation\">></span></span><span class=\"token plain-text\">셋</span><span class=\"token tag\"><span class=\"token tag\"><span class=\"token punctuation\">&lt;/</span>div</span><span class=\"token punctuation\">></span></span><span class=\"token punctuation\">;</span>\n<span class=\"token punctuation\">}</span><span class=\"token punctuation\">)</span><span class=\"token punctuation\">(</span><span class=\"token punctuation\">)</span><span class=\"token punctuation\">;</span></code><span aria-hidden=\"true\" class=\"line-numbers-rows\" style=\"white-space: normal; width: auto; left: 0;\"><span></span><span></span><span></span><span></span><span></span></span></pre></div>\n<ol start=\"3\">\n<li>Arrow Function</li>\n</ol>\n<div class=\"gatsby-highlight\" data-language=\"jsx\"><pre style=\"counter-reset: linenumber NaN\" class=\"language-jsx line-numbers\"><code class=\"language-jsx\"><span class=\"token punctuation\">(</span><span class=\"token punctuation\">(</span><span class=\"token punctuation\">)</span> <span class=\"token operator\">=></span> <span class=\"token punctuation\">{</span>\n    <span class=\"token keyword\">if</span> <span class=\"token punctuation\">(</span>value <span class=\"token operator\">===</span> <span class=\"token number\">1</span><span class=\"token punctuation\">)</span> <span class=\"token keyword\">return</span> <span class=\"token tag\"><span class=\"token tag\"><span class=\"token punctuation\">&lt;</span>div</span><span class=\"token punctuation\">></span></span><span class=\"token plain-text\">하나</span><span class=\"token tag\"><span class=\"token tag\"><span class=\"token punctuation\">&lt;/</span>div</span><span class=\"token punctuation\">></span></span><span class=\"token punctuation\">;</span>\n    <span class=\"token keyword\">if</span> <span class=\"token punctuation\">(</span>value <span class=\"token operator\">===</span> <span class=\"token number\">2</span><span class=\"token punctuation\">)</span> <span class=\"token keyword\">return</span> <span class=\"token tag\"><span class=\"token tag\"><span class=\"token punctuation\">&lt;</span>div</span><span class=\"token punctuation\">></span></span><span class=\"token plain-text\">둘</span><span class=\"token tag\"><span class=\"token tag\"><span class=\"token punctuation\">&lt;/</span>div</span><span class=\"token punctuation\">></span></span><span class=\"token punctuation\">;</span>\n    <span class=\"token keyword\">if</span> <span class=\"token punctuation\">(</span>value <span class=\"token operator\">===</span> <span class=\"token number\">3</span><span class=\"token punctuation\">)</span> <span class=\"token keyword\">return</span> <span class=\"token tag\"><span class=\"token tag\"><span class=\"token punctuation\">&lt;</span>div</span><span class=\"token punctuation\">></span></span><span class=\"token plain-text\">셋</span><span class=\"token tag\"><span class=\"token tag\"><span class=\"token punctuation\">&lt;/</span>div</span><span class=\"token punctuation\">></span></span><span class=\"token punctuation\">;</span>\n<span class=\"token punctuation\">}</span><span class=\"token punctuation\">)</span><span class=\"token punctuation\">(</span><span class=\"token punctuation\">)</span><span class=\"token punctuation\">;</span></code><span aria-hidden=\"true\" class=\"line-numbers-rows\" style=\"white-space: normal; width: auto; left: 0;\"><span></span><span></span><span></span><span></span><span></span></span></pre></div>","id":"7e3fd71c-ea3e-531d-97c2-0783b8dfd452","frontmatter":{"title":"[React] React Basic - (1) React의 개념과 JSX ","date":"2020-03-15T00:00:00.000Z","description":"how to use react.js?"},"fields":{"slug":"/blog/react/react_20200315/"}}},"pageContext":{"slug":"/blog/react/react_20200315/"}}}