본문 바로가기

전체 글

(348)
[코테] 비트마스킹 기본 비트연산자&: AND 연산|: OR 연산^: XOR 연산. 같으면 false, 다르면 true~: 모든 비트 반전. 1의 보수연산자>: 비트 이동★ ~value = -(value + 1) 주요 로직logiccodedescriptionidx번째 비트 끄기target &= ~(1 idx번째 비트를 0으로 만들고 AND 연산을 통해 끄기idx번째 비트 XOR 연산target ^= (1 idx번째 비트와 1을 XOR 연산켜진 최하위 비트 찾기idx = (target & -target)-target은 ~target + 1과 같은 결과이다. 따라서 기존 target을 뒤집고 +1을 하면 언제나 마지막에 켜져있는 비트가 켜지고 AND 연산을 통해 찾을 수 있다.크기가 n인 집합의 모든 비트 켜기(1 시프트 연산을 ..
[Next.js] Navigation part.3, Template, Loading, Error Navigating programmatically지금까지와는 다르게 코드를 사용해서 navigation을 사용하는 방법입니다. useRouter와 redirect를 이용한 방법입니다. 1. useRouter hook사용할 때 주의할 사항을 'next/navigation'에서 가져온다는 점입니다. 이전에는 'next/router'에서 가져와서 사용했기 때문에 주의해야 합니다. 또한 클라이언트 컴포넌트에서만 사용할 수 있다는 점입니다.'use client';import { useRouter } from 'next/navigation';export default function Test() { const router = useRouter(); const handleClick = () => { rout..
[영단어] Clauses 절 또는 구문이라는 의미를 가지고 있습니다. 예를 들어, extends Clauses > extends 절(구문), implements clauses > implements 절(구문) class Dog extends Animal {}class Man implements Person {}
[TS] TS Doc Handbook 1회독 - 7 ClassesClass MembersTS는 ES2015에서 소개된 class 키워드에 대해 모든 지원을 제공한다.필드의 type annotation은 선택이지만 기본적으로 any로 설정된다. --strictPropertyInitialization 옵션: 초기화와 생성자 함수에 대한 설정 필드는 생성자 자체에서 초기화되어야 하지만, 다른 수단을 통해 명확하게 초기화하는 경우에는 ! 연산자를 사용할 수 있다.필드에서는 readonly 수정자를 사용할 수 있다. 생성자생성자는 반환 타입 표기를 할 수 없고, 타입 파라미터를 가질 수 없다.외부 클래스 선언 super call: TS에서 super를 호출하는 것을 깜박하면 알려줍니다. 메서드타입 표기는 함수와 생성자와 동일하다. this를 통해 필드에 접근하는 ..
[TS] TS Doc Handbook 1회독 - 6 Type ManipulationCreating Types from TypesGenericsfunction echo(arg: Type): Type { return arg;}let output = echo('Test'); // string 출력let output2 = echo('Test'); // string 출력, 타입 추론function echoArr(arg: Type[]): Type[] {// 같은 의미// function echoArr(arg: Array): Array { console.log(arg.length); return arg;}let output3 = echoArr([1,2,3]); // 3, [1,2,3] 출력△제네릭 함수let myEcho: { (arg: Type): Type } ..
[Next.js] Navigation part.2 params, searchParamsparams: dynamic routesearchParams: query parametersexample) '/some/thing?id=1' → thing(params), id=1(searchParams) export default async function Test({params, searchParams}: { params: Promise; searchParams: Promise;}) { const {dynamicThing} = await params; const {query=defaultValue} = await searchParams; // return ...}두 가지의 파람은 page.tsx에서 사용할 수 있는 매개변수이고 layout.tsx에서는 ..
[TS] TS Doc Handbook 1회독 - 5 Generic Object Typesinterface Obj { content: Type;}type Obj = { content: Type;}let strObj: Obj;let numObj: Obj;function genericFunc(obj: Obj, newContent: Type) { box.content = newContent;} 제네릭 오브젝트 타입으로 Array, Map, Set, Promise 등이 있다. ReadonlyArray typeconst arr: ReadonlyArray;const arr: readonly T[]; Tuple typeoptional tuple elements, rest elementsreadonly tuple 참고무료 사이트 모음 2021, 자라는 것을 잘하는 ..
[영단어] type coercion(자동 형변환) 암시적이거나 명시적인 형 변환과 달리 암시적이기만 함. 참고https://developer.mozilla.org/ko/docs/Glossary/Type_coercion