본문 바로가기

전체 글100

[JavaScript] 구조 분해 할당 1. 구조 분해 할당 Destructuring Assignment 구조 분해 할당은 배열의 요소나 객체의 Property를 말 그대로 분해해서 각 변수에 할당하는 문법이다. 기존 배열이나 객체에 저장된 데이터 중 일부만 필요한 경우에 활용할 수 있는 문법이다. 먼저 배열의 요소를 분해해서 할당하는 방법부터 알아보도록 하겠다. ① 배열, 구조 분해 할당 (1). 배열 요소를 각 변수에 분해 할당하기 const colors = ["Red", "Green", "Blue"]; let [c1, c2, c3] = colors; console.log(`c1 : ${c1}`); //c1 : Red console.log(`c2 : ${c2}`); //c2 : Green console.log(`c3 : ${c3}`); /.. 2024. 1. 9.
[React] React Component 생성법 1. React Component 2. React.createElement() 3. JSX ① JSX ② JSX 코드에 JavaScript 추가하기 1. React Component React는 사용자 인터페이스 User Interface, 속칭 UI를 만들기 위한 JavaScript 라이브러리로 React로 개발한 웹 페이지는 여러 개의 Component를 조합해서 만들어진다. 여기서 Component란 '구성요소', '부품'이라는 의미를 가지고 있다. 이를 참고해서 React에서 Component는 UI를 만들기 위한 구성 요소 및 부품이라고 할 수 있다. 이해를 돕기 위해서 React로 개발된 웹 페이지 하나를 예시로 가져와봤다. https://www.instagram.com/ Instagram w.. 2024. 1. 5.
나의 개발자 인생 회고록 📆 Last Update : 2024.01.22 월요일 이 글은 처음 개발을 접했던 2017년부터, 웹 개발을 공부하고 있는 현재까지 개발자의 인생을 살아가고 있는 제 삶에 대한 나름의 회고록입니다. 사실은 개발자가 되기로 한 이유에 대해 명확하게 정의를 내리고 싶어서 쓰는 잡담 글이고 앞으로 이력서를 작성할 때 참고하려고 쓰는 글이기도 합니다. 💻 개발을 처음으로 접했던 시기 const MyInfo = { '학교' = "유한대학교", '전공' = "전자공학과 / 2년제", '입학' = 201703, '졸업' = 202202 }; 제가 개발, 프로그래밍을 처음 접하게 된 시기는 대학교 1학년 때였습니다. 2년제 전문대학이다 보니 이론 강의와 실습 강의를 같이 수강했었는데 그중 1학년 2학기에 있었던 '디.. 2024. 1. 2.
HTML 문서가 브라우저에 랜더링되는 과정 1. 랜더링 Rendering의 정의 HTML, XML과 같은 Markup 언어로 작성된 문서를 chrome이나 Firefox와 같은 웹 브라우저에서 열면 해당 브라우저의 엔진 (Chrome = Blink, Firefox = Gecko)이 사람의 눈으로 볼 수 있는 형태로 변환해 준다. 이때 Markup 언어로 작성된 문서를 사람의 눈으로 볼 수 있는 형태로 변환해 주는 과정을 랜더링 Rendering이라고 한다. 2. 웹 문서가 브라우저에 랜더링 되는 과정 프로그래밍에서의 랜더링 Rendering이 무엇인지 간단하게 알아봤으니 이제 본격적으로 웹 문서가 브라우저에 랜더링 되는 과정에 대해 다뤄보도록 하겠다. 아래 HTML 문서, 웹 페이지를 구글 크롬과 같은 웹 브라우저로 연다고 가정해 보자. 아래는 .. 2023. 12. 18.
[React] 개발 환경 설정 📃 목차 1. ReactJS 개발 환경 설정하기 ① React 설치하기 ② React 개발 모드와 배포 모드 2. Create React App ① node.js 설치 ② React 설치 ③ 프로젝트 폴더 구성 ④ React 예제 실행하기 📕 Reference React 개발 환경을 설정하는 방법은 두 가지가 존재한다. 하나는 이 글을 쓰는 시점에서 위의 ② React 개발 모드와 배포 모드 React로 개발한 웹 페이지를 배포할 때는 'development.js'를 'production.min.js'로 수정해 주자. 앞에서 태그를 통해 설치했던 React와 ReactDOM은 development, 개발 모드로 프로그램 개발 중에 버그로 이어질 수 있는 요소들에 대해 경고를 보내는 검증 코드가 포함되어 .. 2023. 12. 12.
라이브러리, 프레임워크, UI 0. 개요 우리가 게시판 형태의 웹 사이트를 만든다고 가정해 보자. 게시판을 만들 때 구현할 기능으로는 회원 가입, 게시글 작성, 게시물 목록 표시 등이 존재하고 이를 구현할 때 모든 기능을 처음부터 끝까지 만들 수도 있고 아니면 일부 기능은 다른 사람이 만들어둔 부품, 소프트웨어를 가져오고 그걸 잘 조합해서 우리가 원하는 형태의 웹 페이지로 만들 수도 있다. 여기서 웹 페이지를 만들 때 활용했던 다른 사람이 만들어놓은 부품, 소프트웨어로 라이브러리 Library와 프레임워크 Framework를 예로 들 수 있다. 이번에는 라이브러리 Library와 프레임워크 Framework의 정의를 먼저 다루고 추가적으로 UI, 사용자 인터페이스의 정의에 대해서도 정리해 봤다. 바로 본론으로 들어가도록 하자. 1. .. 2023. 11. 15.
[JavaScript] 배열 Array 목차 0. 개요 1. 배열 Array ① 배열의 정의 ② 배열 요소 접근 2. 배열 요소 추가 및 삭제 ① 배열 요소 추가 ② 배열 요소 삭제 3. Reference 0. 개요 빨간색, 파란색, 초록색 위의 세 가지 색상을 'Color'라는 변수에 저장하려고 한다. 기본적으로 변수에는 한 개의 값만 저장할 수 있기 때문에, 객체를 활용해서 세 가지 색상 요소를 'Color' 변수에 저장해야한다. let Color = { "Color1": "Red", "Color2": "Blue", "Color3": "Green" }; 변수 'Color'에 "빨간색", "파란색", "초록색" 세 가지 색상이 객체의 형태로 할당된 것을 확인했으니 이제 다른 색상을 하나 더 추가해 보자. let Color = { "Color.. 2023. 10. 29.
[JavaScript] this 목차 1. this란? ① this ② this.(Key)와 '객체 변수'.(Key) 비교 2. JavaScript에서의 this 3. Reference 1. this란? 이전 게시글에서 메서드를 추가하고 사용하는 것을 다뤘지만 객체 메서드가 객체 Property를 참조할 수 있게 하는 방법에 대해서는 다루지 않았었다. 그러므로 이번에 다룰 것은 메서드가 객체 Property를 참조하려고 할 때 쓸 수 있는 'this' 키워드에 관한 것이다. ① this //this 예제 const Person = { name: "John", Hello(){ console.log(`안녕하세요. 저는 ${this.name}입니다.`); } }; Person.Hello(); 객체 메서드에서 'this'는 아래와 같이 입력하.. 2023. 10. 25.
[TypeScript] 타입 단언 Type Assertion 1. 개요 ① 문제 발생 (ts2339: Property does not exist on type) ② 문제 해결과정 1 (변수 SearchInput에 저장되는 DOM 객체의 타입을 HTMLElement로 단언) ③ 문제 해결과정 2 (변수 SearchInput에 저장되는 DOM 객체의 타입을 HTMLInputElement로 수정) 2. 타입 단언 (Type Assertion0) 3. Reference 1. 개요 ① 문제 발생 (ts2339: Property does not exist on type) '나만의 크롬 시작화면'의 검색창을 구현하다가 아래와 같은 Error를 보게 되었다. const SearchInput = document.getElementById("Search_Input"); const .. 2023. 10. 6.