Front-end 42

[JS] DOM: Document Object Model

DOM이란?웹 페이지를 이루는 요소들을 JS가 이용할 수 있게끔, 브라우저가 트리구조로 만든 객체 모델을 의미하며메모리에 웹 페이지 문서 구조를 트리구조로 표현해서, 웹 브라우저가 HTML 페이지를 인식하게 해준다.DOM에서 제공하는 API를 통해 DOM 트리를 조작할 수 있다. * document 는 브라우저에서 제공하는 window 객체의 한 부분 (JS 자체 요소 X) 웹 페이지 빌드 과정 (CRP: Critical Rendering Path)브라우저가 서버에서 페이지에 대한 HTML 응답을 받고 화면에 표시하기 전에 여러 단계가 있는데웹 브라우저가 HTML 문서를 읽고, 스타일을 입히고 뷰포트에 표시하는 과정이다  CSSOM이란?  CSS Object ModelJS에서 CSS를 조작할 수 있는 A..

Front-end/Vanila JS 2024.06.20

[JS] Loops

forwhilelet i = 0do { console.log(`Number ${i}`) i++ } while (i  *continue : 현재 루프를 skip *break :  루프 자체를 stop  배열 반복// LOOP THROUGH ARRAYconst items = [1, 2, 3]// FORfor (let i = 0; i   작동 여부for forEachbreak문○Xawait○△  평균적인 속도는 for가 forEach보다 조금 더 빠르지만코드에서 중요한 건, 가독성(readability)이기 때문에 큰 차이가 아니라면목적과 가독성에 맞추어 선택하자

Front-end/Vanila JS 2024.06.20

[JS] Math 객체

Math.E = 𝑒 ≈ 2.718자연로그의 밑 값 e Math.PI = 𝜋 ≈ 3.14159원의 둘레와 지름의 비율 Math.random()0 이상 1 미만의 부동소숫점 의사 난수를 반환// 1부터 n 사이의 정수 난수 생성Math.floor(Math.random() * n + 1)Math.ceil(Math.random() * n)// min부터 max 사이의 정수 난수 생성Math.random() * (max - min) + min     [JS/알고리즘] 백준1085. 최솟값 최댓값C++ 로 알고리즘을 처음 배워서 for문으로 구하는 방식만 알고 있었는데 아니 이게 웬 걸 우리 JS에겐 Math 라이브러리가 있었다. 4ms 시간이 단축됐다. Math.min(value1, value2, ...) M..

Front-end/Vanila JS 2024.05.23

[JS] variables - var, let, const (scope, hoisting)

const ⭐️ (ES6)중복선언 ✕  재할당 ✕constant '상수'never gonna updated∴ default (always)  [JS] const인 array, object 요소 수정 가능한 이유원시자료형 Primitive Values : 변수에 값을 직접 할당 string, number, bigint, boolean, undefined, symbol, null 📦 저장 1) 실제 값은 STACK 메모리에 저장 2) 변수는 STACK 속 데이터의 주소/위치를 바라봄 📑 복사 1)119taeyoung.tistory.com let (ES6)중복선언 ✕  재할당 ⃝will be updated∴ 필요시 (sometimes) - 변수의 scope를 최대한 좁게 하여  var (legacy)중복선..

Front-end/Vanila JS 2024.04.29

[JS] Console 객체

console 객체는 브라우저의 디버깅 콘솔(Firefox 웹 콘솔 등)에 접근할 수 있는 메서드를 제공합니다.동작 방식은 브라우저마다 다르지만, 사실상 표준으로 여겨지는 기능도 여럿 있습니다. console 객체는 아무 전역 객체에서나 접근할 수 있습니다. 브라우징 문맥에선 Window, 워커에서는 WorkerGlobalScope(en-U)가 속성으로 포함하고 있습니다.Window.console의 형태로 노출되어 있으므로 간단하게 console로 참조할 수 있습니다. console.log('Hello World')console.log(1998)console.log(true)var obj = { key: 'value' }console.log(obj)console.table(obj)..

Front-end/Vanila JS 2024.04.24

주간회고록 5주차

5주차 🎯 이번 주 목표 스프린트와 챌린지 제출 놓치지 않기! 사이드 프로젝트 마무리하고 이력서 완성하기! 🏃‍♀️ 일일 스프린트 2월 1일 (목) ✅ 회사업무 너무 많아요ㅜ ❌ 주간회고록 4주차 ❌ JS 크롬앱 강의수강 #3.0 - 5.3 ✅ JS 크롬앱 챌린지 8th 2월 2일 (금) 성묘 2월 3일 (토) 가족행사 2월 4일 (일) 성묘 2월 5일 (월) ✅ 회사 업무 ⚠️ 유튜브 클론 강의수강 #1.0 - 2.4 2.1 ✅ 유튜브 클론 챌린지 1st 2월 6일 (화) ✅ 유튜브 클론 강의수강 #2.2 - 2.4 ✅ 유튜브 클론 강의수강 #3.0 - 3.4 ✅ 유튜브 클론 챌린지 2nd 2월 7일 (수) ✅ 회사 업무 ⚠️ 유튜브 클론 강의수강 #3.5 - 3.10 3.8 ✅ 유튜브 클론 챌린지 3..

재수생의 주간회고록 4주차

4주차 - 약간 지쳐서 풀어진 느낌. - 끝날 때까지 다시 한번 가보자고! - 두번째 챌린지 완료 ✌🏼 🎯 이번 주 목표 스프린트와 챌린지 제출 놓치지 않기! 사이드 프로젝트 마무리하고 이력서 완성하기! 🏃‍♀️ 일일 스프린트 1월 25일 (목) ❌ JS 크롬앱 블로그 정리 #3.0 - 3.5 ✅ JS 크롬앱 챌린지 3rd ✅ TS 블록체인 챌린지 8th ❌ 주간회고록 3주차 1월 26일 (금) ❌ JS 크롬앱 강의수강 #3.6 - 3.8 ✅ JS 크롬앱 챌린지 4th ✅ 리액트 마스터 강의수강 #8.0 - 8.16 ✅ 리액트 마스터 챌린지 5th 1월 27일 (토) 1월 28일 (일) ✅ TS 블록체인 챌린지 9th (최종) ⚠️ 리액트 마스터 강의수강 #9.0 - 9.15 9.9 ❌ 리액트 마스터 챌..

재수생의 뒤늦은 주간회고록 3주차

3주차 - 완벽하지 않아도 계속 나아감에 박수를 보낸다. - 앞으로 더 제한시간 내에 필요하고 중요한 정보만 쏙 흡수하도록 연습해보자 🎯 이번 주 목표 스프린트와 챌린지 제출 놓치지 않기! 🏃‍♀️ 일일 스프린트 1월 18일 (목) ✅ 주간회고록 2주차 ⚠️ 리액트 마스터 강의수강 #2.7, 3.2, 3.6 ✅ TS 블록체인 챌린지 Day4 1월 19일 (금) ✅ 리액트 마스터 강의수강 #5.0 - 5.16 ✅ 리액트 마스터 챌린지 Day4 ❌ 코코아톡 클론 강의수강 #6.12 - 6.17 ✅ 코코아톡 챌린지 Day11 1월 20일 (토) ✅ TS 블록체인 Day5 1월 21일 (일) ✅ 코코아톡 클론 강의수강 #6.0 - 6.40, 7.1 ✅ 코코아톡 챌린지 Day12 (졸업작품) 1월 22일 (월) ..