00043-easy-exclude

Back

Here T extends U check if T includes U or not. Using this clever technique we can exclude.

type MyExclude<T, U> = T extends U ? never: T

Solution by Anonymous961 #36965

// your answers
type MyExclude<T, U> = T extends U ? never : T;

Solution by AlexBraunMagic #36916

type MyExclude<T, U> = T extends U ? never : T;

Solution by shaishab316 #36843

// 题目
type Result = MyExclude<'a' | 'b' | 'c', 'a'> // 'b' | 'c'
// 你的答案
type MyExclude<T, U> =  T extends U ? never : T;

Solution by mola-fish #36831

type MyExclude<T, U> = T extends U ? never : T;

/* _____________ Test Cases _____________ */
import type { Equal, Expect } from '@type-challenges/utils'

type cases = [
  Expect<Equal<MyExclude<'a' | 'b' | 'c', 'a'>, 'b' | 'c'>>,
  Expect<Equal<MyExclude<'a' | 'b' | 'c', 'a' | 'b'>, 'c'>>,
  Expect<Equal<MyExclude<string | number | (() => void), Function>, string | number>>,
]

Solution by AnastasiaSv #36763

type MyExclude<T, U> = T extends U ? never : T

Solution by seungdeok #36661

// your answers

type MyExclude<T, U> = T extends U ? never : T;

Solution by vva-sync #36627

type MyExclude<T, U> = Exclude<T, U>;
type MyExclude<T, U> = T extends U ? never : T;

Solution by tjd985 #36616

// 你的答案
type MyExclude<T, U> = T extends U ? never : T

Solution by MrSissel #36582

type MyExclude<T, U> = T extends U ? never : T

Solution by ChemieAi #36551


type MyExclude<T, U> = T extends U ? never : T;

Solution by gakki-san #36477

type MyExclude<T, U> = T extends U ? never : T;

Solution by alirezaprime #36413

// your answers
type MyExclude<T, U> = T extends U ? never : T

Solution by ATravelerGo #36370

// your answers
type MyExclude<T, U> = T extends U ? never : T;

Solution by justBadProgrammer #36360

type MyExclude<T, U> = T extends U ? never : T

Solution by 1Alex4949031 #36311

type MyExclude<T, U> = T extends U ? never : T

Solution by Jace254 #36268

type MyExclude<T, U> = T extends infer K ? K extends U ? never : K : never

Solution by Maxim-Do #36226

type MyExclude<T, U> = T extends U ? never : T;

Solution by asylbekduldiev #36182

type MyExclude<T, U> = T extends U ? never : T

Solution by AleksandrShcherbackov #36143

type MyExclude<T, U> = T extends U ? never : T

Solution by KimKyuHoi #36127

type MyExclude<T, U> = T extends U ? never : T

Solution by buglavecz #36094

type MyExclude<T, U> =  T extends U ? never : T;

Solution by karazyabko #36027

type MyExclude<T, U> =  T extends U ? never : T;

Solution by codingaring #35935

// your answers

type MyExclude<T, U> = T extends U ? never : T

Solution by pytest5 #35924

// 你的答案
type MyExclude<T, U> =  T extends U ? never : T;

Solution by reonce #35917

type MyExclude<T, U> = T extends U ? never : T;

Solution by HelloWook #35910

// 你的答案
type MyExclude<T, U> = T extends U ? never : T

Solution by naruto-823 #35789

// 你的答案
type MyExclude<T, U> = T extends U ? never : T

Solution by naruto-823 #35788

type MyExclude<T, U> = T extends U ? never : T;

Solution by Sensuele #35762

type MyExclude<T, U> = T extends U ? never : T; 

Solution by thukyaw11 #35529