Today I Learend React 숙련 강의 수강 React 입문 과제 코드 리뷰 후 피드백에 따른 수정 React 숙련 강의 CSS-in-Js란? CSS-in-JS방식이란, 단어 그대로 자바스크립트로 CSS 코드를 작성하여 컴포넌트를 꾸미는 방식을 말한다. styled-components는 우리가 리액트에서 CSS-in-JS 방식으로 컴포넌트를 꾸밀 수 있게 도와주는 패키지인데 SC의 기본적인 원리는 꾸미고자 하는 컴포넌트를 SC의 방식대로 먼저 만들고, 그 안에 스타일 코드를 작성하는 방식으로 진행된다. styled-components의 기본적인 사용법 // styled-components에서 styled 라는 키워드를 import 합니다. import styled from "styled-com..
Today I Learned 리액트 입문 개인 과제 - My Todo List 만들기 리액트 입문 과제 리뷰 특강 시청 My Todo List 구현하기 배열에서 특정 객체의 프로퍼티 값만 수정하기 const [todo, setTodo] = useState([ {id: 1, title: '운동하기', content: '테스트1', isDone: false}, {id: 2, title: '마라탕 먹기', content: '테스트2', isDone: false}, {id: 3, title: '잘 쉬고 공부하기', content: '테스트3', isDone: false}, ]); 이 배열에서 투두리스트의 완료 버튼을 눌렀을 때 그 id 값을 가진 객체만 isDone: true로 바꿔주는 것이 내가 구현하고 싶은..
Today I Learned React 입문 강의 수강 My Todo List 만들기 과제 수행 React 입문 강의 명령형 프로그래밍과 선언형 프로그래밍 명령형 프로그래밍 (DOM) // 순수 javaScript 명령형 코드 const root = document.getElementById('root'); const header = document.createElement('h1'); const headerContent = document.createTextNode( 'Hello, World!' ); header.appendChild(headerContent); root.appendChild(header); 명령형은 어떻게(How)를 중요시 여겨서 프로그램의 제어의 흐름과 같은 방법을 제시하고 목표를 ..
화살표 함수 (Arrow Function) // ES5 function func() { return true } //ES6 const func = () => true const func = () => { return true } () => {} parm => {} (parm1, parm2, ...parms) -> {} // 익명 화살표 함수 () => {} function은 호출을 할 때 this가 정해지지만, 화살표 함수는 선언할 때 this가 정해진다. 구조 분해 할당 (Destructuring) 구조 분해 할당이란 배열이나 객체의 속성을 분해해서 그 값을 변수에 담을 수 있게 해주는 문법. // 배열의 경우 let [value1, value2] = [1, "new"]; console.log(valu..
Today I Learned React 입문 강의 수강 ES6 문법 특강 수강 React 입문 강의 React란? React는 사용자 인터페이스를 구축하기 위한 선언적이고 효율적이며 유연한 JavaScript 라이브러리. SPA를 전제로 하고 있으며, Virtual DOM을 활용하여 업데이트해야 하는 DOM요소를 찾아서 해당 부분만 업데이트하기 때문에, 리렌더링이 잦은 동적인 모던 웹에서 향상된 퍼포먼스를 낼 수 있다. Virtual Dom (가상 돔)이란? 실제 DOM은 조작이 일어나면 바로 브라우저를 통해 여러가지 랜더링 단계를 거치게 된다. 하지만 메모리상에 그냥 값으로 존재하는 가상 돔은 변경이 일어나도 이것이 브라우저 렌더링과는 직접적으로 연결되어 있지 않다. 즉, 리액트가 가상 돔의 변화를 실..
이번 주는 월요일에 프로젝트 발표를 끝내고 계속 자바스크립트 강의를 들었다. 주중에는 원장님의 자바스크립트 심화 강의를 들으며 데이터 타입, 실행 컨텍스트, THIS, 콜백 함수, 클로저에 대해 공부했다. 이론적인 부분이고 심화 강의답게 내용이 어려워서 모든 내용을 이해할 수는 없었지만 자바스크립트에 익숙해지는 과정이라 생각하고 일단은 강의를 끝까지 다 들었다. 주말에는 코딩애플에서 자바스크립트 강의를 들으며 실습 위주로 자바스크립트를 공부했다. 모달 창이나 토글 기능, 애니메이션 등을 직접 구현해봤다. 확실히 직접 코드를 작성해보니 더 재밌고 금방 배우는 거 같다. 이번 주 동안 쌓은 자바스크립트 기초 지식을 가지고 다음 주부터는 드디어 내배캠의 주특기 REACT 공부를 시작한다. 11월을 마무리하며 ..
Today I Learned JavaScript 입문과 웹 UI 개발 강의 수강 JavaScript 입문과 웹 UI개발 jQuery $('.hello').html('안녕'); javascript의 innerHTML과 동일한 코드. 코드가 짧고 간결하다. $('.hello').css('color', 'red'); jQuery로 css 변경하기 $('.hello').addClass('클래스명'); $('.hello').removeClass('클래스명'); $('.hello').toggleClass('클래스명'); jQuery로 class 명 추가 및 제거하기 안녕 안녕 안녕 javascript의 quertSelectorAll과 다르게 인덱싱 필요 없이 해당 클래스 명을 가진 모든 요소에 접근한다. $('.n..
Today I Learned JavaScript 입문과 웹 UI 개발 강의 수강 JavaScript 입문과 웹 UI개발 강의 getElementById와 getElementsByClassName document.getElementById('test').style.display = 'none'; id 이름은 중복을 허용하지 않음 document.getElementsByClassName('test')[0].style.display = 'none'; 클래스 이름은 중복이 가능함 -> 인덱싱 필수! 동일한 클래스 명을 가진 요소가 여러 개 일 수 있기 때문에 해당 클래스 명의 몇 번째를 가져올 것인지 지정해야 함. querySelector와 querySelectorAll document.querySelector..
OSI 7계층 특강 OSI란? OSI 모형(Open Systems Interconnection Reference Model)은 국제표준화기구(ISO)에서 개발한 모델로, 컴퓨터 네트워크 프로토콜 디자인과 통신을 계층으로 나누어 설명한 것이다. 일반적으로 OSI 7 계층이라 불리기도 한다. 출처 https://namu.wiki/w/OSI%20%EB%AA%A8%ED%98%95 LAN vs WAN LAN (Local Area Network) 사무실이나 빌딩처럼 비교적 좁은 범위의 네트워크를 말한다. WAN (Wide Area Network) 서로 떨어져 있는 LAN 사이를 전용선 등으로 연결한 광역 네트워크를 말한다. 클라이언트 vs 서버 클라이언트 : 네트워크상에서 서버에게 서비스를 요청하는 장비 컴퓨터, ..
Today I Learned javascript 심화 강의 수강 - 클로저 javascript 퀴즈 풀기 OSI 7계층 특강 수강 javascript 심화 강의 - 클로저 함수가 선언된 렉시컬 환경(lexical environment) const x = 1; function outerFunc() { const x = 10; function innerFunc() { console.log(x); // 10 }; innerFunc(); }; outerFunc(); 중첩 함수 innerFunc의 상위 스코프는 outerFunc의 스코프 → 그래서 x = 10에 [먼저] 접근하는 것 const x = 1; // innerFunc()에서는 outerFunc()의 x에 접근할 수 없다. // Lexical Scope..