• 티스토리 홈
  • 프로필사진
    브라더 코드
  • 방명록
  • 공지사항
  • 태그
  • 블로그 관리
  • 글 작성
브라더 코드
  • 프로필사진
    브라더 코드
    • 전체 (96)
      • Web (2)
      • Javascript (20)
        • vanilla (13)
        • react (3)
      • Css (4)
      • TIL (8)
      • Etc (9)
      • Dev (4)
      • Diary (48)
  • 방문자 수
    • 전체:
    • 오늘:
    • 어제:
  • 최근 댓글
      등록된 댓글이 없습니다.
    • 최근 공지
        등록된 공지가 없습니다.
      # Home
      # 공지사항
      #
      # 태그
      # 검색결과
      # 방명록
      • 리액트의 랜더링
        브라더 코드:
        웹브라우저의 랜더링은 'DOM, CSSOM 생성 -> DOM, CSSOM을 가지고 랜더링 트리(청사진, blue print) 생성 -> 레이아웃 -> 페인트' 과정을 거친다. 여기서 일반 js로 돔을 수정하면 위 4단계가 다시 실행된다. 그런데 랜더링 과정 중 마지막 두단계 ReFlow(=ReLayout), RePaint에서 리소스가 많이 든다. 그래서 일반 js로 돔을 조작할때 돔 조작을 최소화해야한다. 하지만 프로젝트 규모가 커질수록 그 작업은 어려워진다. 이것을 해결하기 위해 리액트가 나왔다. 리액트는 돔 조작을 최소화하는 작업을 추상화해서 개발자 대신 해준다. 그 결과 대부분의 상황에서 업데이트 속도가 더 빨라진다. 리액트에서는 Render phase, Commit phase가 있다. Render..
        • 2024-04-15 17:59:19
      • TS 제네릭
        브라더 코드:
        플레이그라운드에서 테스트해보며 썼던 코드이다. 함수를 쓸때 제네릭을 사용하면 좋다. 리턴 타입을 T로 두고 여기에 다양한 타입을 쓸 수 있음 interface UserInfo { userId: number; id: number; title: string; body: string; } const getUserByUserId = async (arg: number): Promise => { return await (await fetch(`https://jsonplaceholder.typicode.com/posts/${arg}`)).json(); } (async function (){ console.log(await getUserByUserId(23)); })();
        • 2023-10-21 21:55:21
      • 타입스크립트 유틸리티 타입
        브라더 코드:
        타입스크립트는 유용한 유틸리티 타입이 많다. 공부하고 숙지해두자. 아는만큼 개발에 쓰일 것이다. /** 1. keyof : interface의 key값들을 유니언 형태로 뽑아냄 */ interface User { id: number; name: string; age: number; gender: 'm' | 'f'; } type UserKey = keyof User; // UserKey : 'id | name | age | gender'; const uk: UserKey = 'gender'; /** 2. Partial : property를 optional로 만듬 */ let admin: Partial = { id: 1, name: 'Bob', } /** 3. Required : 모든 property를 필수..
        • 2023-04-14 21:12:20
      • || 와 ??
        브라더 코드:
        a || b a ?? b 둘다 a와 b를 비교하여 하나를 반환하는 연산자이다. 차이점을 보자. || 는 0, "", false, undefined, null 과 같은 falsy 값을 검사하는 연산자이다. 즉, 첫번째 참인(truthy) 값을 반환한다. +) 자바스크립트에서 null도 falsy 값이다. 그리고 모두 falsy 값이면 마지막 값을 반환한다. ?? 는 null, undefined 와 같은 nullish 값을 검사하는 연산자이다. 즉, 첫번째 정의된(defined) 값을 반환한다. let a = "" || '야호'; console.log(a); // 야호 let b = null || 1; console.log(b); // 1 let c = undefined || null || 0; consol..
        • 2022-06-14 17:23:37
      • 옵셔널 체이닝
        브라더 코드:
        ?. 이 문법은 객체의 값에 접근할 때 사용한다. 간단하다. ?. 왼쪽이 null, undefined이면 ?. 오른쪽을 실행하지 않고 undefined를 리턴한다. 반대로 ?. 왼쪽이 null, undefined가 아니면 ?. 오른쪽을 실행한다. let human = { age: 30, address: "korea", name: { lastName: "park", } } console.log(human.job); // undefined console.log(human.job.salary); // error: Cannot read properties of undefined console.log(human.job?.salary); //undefined console.log(human.name?.lastNam..
        • 2022-06-14 17:07:55
      • 바닐라 JS로 redux 구현하기(2)
        브라더 코드:
        버튼을 누르면 숫자가 변경되는(+/-) 프로그램을 리덕스를 이용해 바닐라 자바스크립트로 구현했다. 1. html Add Minus 2. javascript import { createStore } from "redux"; const add = document.getElementById("add"); const minus = document.getElementById("minus"); const number = document.querySelector("span"); number.innerText = 0; const ADD = "ADD"; const MINUS = "MINUS"; const countModifier = (count = 0, action) => { switch (action.type) { c..
        • 2022-05-18 11:06:14
      조회된 결과가 없습니다.
      [1][2][3][4]
      스킨 업데이트 안내
      현재 이용하고 계신 스킨의 버전보다 더 높은 최신 버전이 감지 되었습니다. 최신버전 스킨 파일을 다운로드 받을 수 있는 페이지로 이동하시겠습니까?
      ("아니오" 를 선택할 시 30일 동안 최신 버전이 감지되어도 모달 창이 표시되지 않습니다.)
      목차
      표시할 목차가 없습니다.
        • 안녕하세요
        • 감사해요
        • 잘있어요

        티스토리툴바