<p align='center'>
  <img src='./screenshots/logo.svg' width='400'/>
</p>

<p align='center'>TypeScript 类型体操姿势合集</p>

<p align='center'>
  <a href='https://discord.gg/UgKBCq9'>
    <img src='https://img.shields.io/badge/-Discord-yellowgreen?logo=discord&logoColor=white&color=7289da'/>
  </a>
  <a href='https://www.typescriptlang.org/play?install-plugin=%40type-challenges%2Fplayground-plugin'>
    <img src='https://img.shields.io/badge/Playground-143?logo=typescript&color=3178C6&logoColor=fff' />
  </a>
</p>

<br>

<p align='center'>
  <a href='./README.md'>English</a> | 简体中文 | <a href='./README.ja.md'>日本語</a> | <a href='./README.ko.md'>한국어</a> | <a href='./README.pt-BR.md'>Português</a>
</p>

<br>

## 介绍

<p align='center'>
  <del><em>众所周知，TypeScript 拥有一个<a href="https://github.com/microsoft/TypeScript/issues/14833">图灵完备的类型系统</a></em></del>
</p>

高质量的类型可以提高项目的可维护性并避免一些潜在的漏洞。市面上也已经有许多优秀的类型工具库，像是 [ts-toolbelt](https://github.com/millsp/ts-toolbelt), [utility-types](https://github.com/piotrwitek/utility-types), [SimplyTyped](https://github.com/andnp/SimplyTyped) 等等。我们也从这些项目中获取了许多灵感。

本项目意在于让你更好的了解 TS 的类型系统，编写你自己的类型工具，或者只是单纯的享受挑战的乐趣！我们同时希望可以建立一个社区，在这里你可以提出你在实际环境中遇到的问题，或者帮助他人解答疑惑 - 这些问题也可能被选中成为题库的一部分！

## 题库

> 点击下方按钮查看题目内容

> **注**: 题目在[严格模式](https://www.typescriptlang.org/tsconfig#strict)下测试。

<br>

<!--challenges-start-->
<img src="https://img.shields.io/badge/%E7%83%AD%E8%BA%AB-1-teal" alt="1"/><br><a href="./questions/00013-warm-hello-world/README.zh-CN.md" target="_blank"><img src="https://img.shields.io/badge/-13%E3%83%BBHello%20World-teal" alt="13・Hello World"/></a> <br><br><img src="https://img.shields.io/badge/%E7%AE%80%E5%8D%95-13-7aad0c" alt="13"/><br><a href="./questions/00004-easy-pick/README.zh-CN.md" target="_blank"><img src="https://img.shields.io/badge/-4%E3%83%BB%E5%AE%9E%E7%8E%B0%20Pick-7aad0c" alt="4・实现 Pick"/></a> <a href="./questions/00007-easy-readonly/README.zh-CN.md" target="_blank"><img src="https://img.shields.io/badge/-7%E3%83%BB%E5%AF%B9%E8%B1%A1%E5%B1%9E%E6%80%A7%E5%8F%AA%E8%AF%BB-7aad0c" alt="7・对象属性只读"/></a> <a href="./questions/00011-easy-tuple-to-object/README.zh-CN.md" target="_blank"><img src="https://img.shields.io/badge/-11%E3%83%BB%E5%85%83%E7%BB%84%E8%BD%AC%E6%8D%A2%E4%B8%BA%E5%AF%B9%E8%B1%A1-7aad0c" alt="11・元组转换为对象"/></a> <a href="./questions/00014-easy-first/README.zh-CN.md" target="_blank"><img src="https://img.shields.io/badge/-14%E3%83%BB%E7%AC%AC%E4%B8%80%E4%B8%AA%E5%85%83%E7%B4%A0-7aad0c" alt="14・第一个元素"/></a> <a href="./questions/00018-easy-tuple-length/README.zh-CN.md" target="_blank"><img src="https://img.shields.io/badge/-18%E3%83%BB%E8%8E%B7%E5%8F%96%E5%85%83%E7%BB%84%E9%95%BF%E5%BA%A6-7aad0c" alt="18・获取元组长度"/></a> <a href="./questions/00043-easy-exclude/README.zh-CN.md" target="_blank"><img src="https://img.shields.io/badge/-43%E3%83%BB%E5%AE%9E%E7%8E%B0%20Exclude-7aad0c" alt="43・实现 Exclude"/></a> <a href="./questions/00189-easy-awaited/README.zh-CN.md" target="_blank"><img src="https://img.shields.io/badge/-189%E3%83%BBAwaited-7aad0c" alt="189・Awaited"/></a> <a href="./questions/00268-easy-if/README.zh-CN.md" target="_blank"><img src="https://img.shields.io/badge/-268%E3%83%BBIf-7aad0c" alt="268・If"/></a> <a href="./questions/00533-easy-concat/README.zh-CN.md" target="_blank"><img src="https://img.shields.io/badge/-533%E3%83%BBConcat-7aad0c" alt="533・Concat"/></a> <a href="./questions/00898-easy-includes/README.zh-CN.md" target="_blank"><img src="https://img.shields.io/badge/-898%E3%83%BBIncludes-7aad0c" alt="898・Includes"/></a> <a href="./questions/03057-easy-push/README.zh-CN.md" target="_blank"><img src="https://img.shields.io/badge/-3057%E3%83%BBPush-7aad0c" alt="3057・Push"/></a> <a href="./questions/03060-easy-unshift/README.zh-CN.md" target="_blank"><img src="https://img.shields.io/badge/-3060%E3%83%BBUnshift-7aad0c" alt="3060・Unshift"/></a> <a href="./questions/03312-easy-parameters/README.zh-CN.md" target="_blank"><img src="https://img.shields.io/badge/-3312%E3%83%BBParameters-7aad0c" alt="3312・Parameters"/></a> <br><br><img src="https://img.shields.io/badge/%E4%B8%AD%E7%AD%89-104-d9901a" alt="104"/><br><a href="./questions/00002-medium-return-type/README.zh-CN.md" target="_blank"><img src="https://img.shields.io/badge/-2%E3%83%BB%E8%8E%B7%E5%8F%96%E5%87%BD%E6%95%B0%E8%BF%94%E5%9B%9E%E7%B1%BB%E5%9E%8B-d9901a" alt="2・获取函数返回类型"/></a> <a href="./questions/00003-medium-omit/README.zh-CN.md" target="_blank"><img src="https://img.shields.io/badge/-3%E3%83%BB%E5%AE%9E%E7%8E%B0%20Omit-d9901a" alt="3・实现 Omit"/></a> <a href="./questions/00008-medium-readonly-2/README.zh-CN.md" target="_blank"><img src="https://img.shields.io/badge/-8%E3%83%BB%E5%AF%B9%E8%B1%A1%E9%83%A8%E5%88%86%E5%B1%9E%E6%80%A7%E5%8F%AA%E8%AF%BB-d9901a" alt="8・对象部分属性只读"/></a> <a href="./questions/00009-medium-deep-readonly/README.zh-CN.md" target="_blank"><img src="https://img.shields.io/badge/-9%E3%83%BB%E5%AF%B9%E8%B1%A1%E5%B1%9E%E6%80%A7%E5%8F%AA%E8%AF%BB%EF%BC%88%E9%80%92%E5%BD%92%EF%BC%89-d9901a" alt="9・对象属性只读（递归）"/></a> <a href="./questions/00010-medium-tuple-to-union/README.zh-CN.md" target="_blank"><img src="https://img.shields.io/badge/-10%E3%83%BB%E5%85%83%E7%BB%84%E8%BD%AC%E5%90%88%E9%9B%86-d9901a" alt="10・元组转合集"/></a> <a href="./questions/00012-medium-chainable-options/README.zh-CN.md" target="_blank"><img src="https://img.shields.io/badge/-12%E3%83%BB%E5%8F%AF%E4%B8%B2%E8%81%94%E6%9E%84%E9%80%A0%E5%99%A8-d9901a" alt="12・可串联构造器"/></a> <a href="./questions/00015-medium-last/README.zh-CN.md" target="_blank"><img src="https://img.shields.io/badge/-15%E3%83%BB%E6%9C%80%E5%90%8E%E4%B8%80%E4%B8%AA%E5%85%83%E7%B4%A0-d9901a" alt="15・最后一个元素"/></a> <a href="./questions/00016-medium-pop/README.zh-CN.md" target="_blank"><img src="https://img.shields.io/badge/-16%E3%83%BB%E6%8E%92%E9%99%A4%E6%9C%80%E5%90%8E%E4%B8%80%E9%A1%B9-d9901a" alt="16・排除最后一项"/></a> <a href="./questions/00020-medium-promise-all/README.zh-CN.md" target="_blank"><img src="https://img.shields.io/badge/-20%E3%83%BBPromise.all-d9901a" alt="20・Promise.all"/></a> <a href="./questions/00062-medium-type-lookup/README.zh-CN.md" target="_blank"><img src="https://img.shields.io/badge/-62%E3%83%BB%E6%9F%A5%E6%89%BE%E7%B1%BB%E5%9E%8B-d9901a" alt="62・查找类型"/></a> <a href="./questions/00106-medium-trimleft/README.zh-CN.md" target="_blank"><img src="https://img.shields.io/badge/-106%E3%83%BB%E5%8E%BB%E9%99%A4%E5%B7%A6%E4%BE%A7%E7%A9%BA%E7%99%BD-d9901a" alt="106・去除左侧空白"/></a> <a href="./questions/00108-medium-trim/README.zh-CN.md" target="_blank"><img src="https://img.shields.io/badge/-108%E3%83%BB%E5%8E%BB%E9%99%A4%E4%B8%A4%E7%AB%AF%E7%A9%BA%E7%99%BD%E5%AD%97%E7%AC%A6-d9901a" alt="108・去除两端空白字符"/></a> <a href="./questions/00110-medium-capitalize/README.zh-CN.md" target="_blank"><img src="https://img.shields.io/badge/-110%E3%83%BBCapitalize-d9901a" alt="110・Capitalize"/></a> <a href="./questions/00116-medium-replace/README.zh-CN.md" target="_blank"><img src="https://img.shields.io/badge/-116%E3%83%BBReplace-d9901a" alt="116・Replace"/></a> <a href="./questions/00119-medium-replaceall/README.zh-CN.md" target="_blank"><img src="https://img.shields.io/badge/-119%E3%83%BBReplaceAll-d9901a" alt="119・ReplaceAll"/></a> <a href="./questions/00191-medium-append-argument/README.zh-CN.md" target="_blank"><img src="https://img.shields.io/badge/-191%E3%83%BB%E8%BF%BD%E5%8A%A0%E5%8F%82%E6%95%B0-d9901a" alt="191・追加参数"/></a> <a href="./questions/00296-medium-permutation/README.zh-CN.md" target="_blank"><img src="https://img.shields.io/badge/-296%E3%83%BBPermutation-d9901a" alt="296・Permutation"/></a> <a href="./questions/00298-medium-length-of-string/README.zh-CN.md" target="_blank"><img src="https://img.shields.io/badge/-298%E3%83%BBLength%20of%20String-d9901a" alt="298・Length of String"/></a> <a href="./questions/00459-medium-flatten/README.zh-CN.md" target="_blank"><img src="https://img.shields.io/badge/-459%E3%83%BBFlatten-d9901a" alt="459・Flatten"/></a> <a href="./questions/00527-medium-append-to-object/README.zh-CN.md" target="_blank"><img src="https://img.shields.io/badge/-527%E3%83%BBAppend%20to%20object-d9901a" alt="527・Append to object"/></a> <a href="./questions/00529-medium-absolute/README.zh-CN.md" target="_blank"><img src="https://img.shields.io/badge/-529%E3%83%BBAbsolute-d9901a" alt="529・Absolute"/></a> <a href="./questions/00531-medium-string-to-union/README.zh-CN.md" target="_blank"><img src="https://img.shields.io/badge/-531%E3%83%BBString%20to%20Union-d9901a" alt="531・String to Union"/></a> <a href="./questions/00599-medium-merge/README.zh-CN.md" target="_blank"><img src="https://img.shields.io/badge/-599%E3%83%BBMerge-d9901a" alt="599・Merge"/></a> <a href="./questions/00612-medium-kebabcase/README.md" target="_blank"><img src="https://img.shields.io/badge/-612%E3%83%BBKebabCase-d9901a" alt="612・KebabCase"/></a> <a href="./questions/00645-medium-diff/README.zh-CN.md" target="_blank"><img src="https://img.shields.io/badge/-645%E3%83%BBDiff-d9901a" alt="645・Diff"/></a> <a href="./questions/00949-medium-anyof/README.zh-CN.md" target="_blank"><img src="https://img.shields.io/badge/-949%E3%83%BBAnyOf-d9901a" alt="949・AnyOf"/></a> <a href="./questions/01042-medium-isnever/README.md" target="_blank"><img src="https://img.shields.io/badge/-1042%E3%83%BBIsNever-d9901a" alt="1042・IsNever"/></a> <a href="./questions/01097-medium-isunion/README.md" target="_blank"><img src="https://img.shields.io/badge/-1097%E3%83%BBIsUnion-d9901a" alt="1097・IsUnion"/></a> <a href="./questions/01130-medium-replacekeys/README.md" target="_blank"><img src="https://img.shields.io/badge/-1130%E3%83%BBReplaceKeys-d9901a" alt="1130・ReplaceKeys"/></a> <a href="./questions/01367-medium-remove-index-signature/README.md" target="_blank"><img src="https://img.shields.io/badge/-1367%E3%83%BBRemove%20Index%20Signature-d9901a" alt="1367・Remove Index Signature"/></a> <a href="./questions/01978-medium-percentage-parser/README.zh-CN.md" target="_blank"><img src="https://img.shields.io/badge/-1978%E3%83%BBPercentage%20Parser-d9901a" alt="1978・Percentage Parser"/></a> <a href="./questions/02070-medium-drop-char/README.zh-CN.md" target="_blank"><img src="https://img.shields.io/badge/-2070%E3%83%BBDrop%20Char-d9901a" alt="2070・Drop Char"/></a> <a href="./questions/02257-medium-minusone/README.zh-CN.md" target="_blank"><img src="https://img.shields.io/badge/-2257%E3%83%BBMinusOne-d9901a" alt="2257・MinusOne"/></a> <a href="./questions/02595-medium-pickbytype/README.md" target="_blank"><img src="https://img.shields.io/badge/-2595%E3%83%BBPickByType-d9901a" alt="2595・PickByType"/></a> <a href="./questions/02688-medium-startswith/README.zh-CN.md" target="_blank"><img src="https://img.shields.io/badge/-2688%E3%83%BBStartsWith-d9901a" alt="2688・StartsWith"/></a> <a href="./questions/02693-medium-endswith/README.zh-CN.md" target="_blank"><img src="https://img.shields.io/badge/-2693%E3%83%BBEndsWith-d9901a" alt="2693・EndsWith"/></a> <a href="./questions/02757-medium-partialbykeys/README.zh-CN.md" target="_blank"><img src="https://img.shields.io/badge/-2757%E3%83%BBPartialByKeys-d9901a" alt="2757・PartialByKeys"/></a> <a href="./questions/02759-medium-requiredbykeys/README.zh-CN.md" target="_blank"><img src="https://img.shields.io/badge/-2759%E3%83%BBRequiredByKeys-d9901a" alt="2759・RequiredByKeys"/></a> <a href="./questions/02793-medium-mutable/README.zh-CN.md" target="_blank"><img src="https://img.shields.io/badge/-2793%E3%83%BBMutable-d9901a" alt="2793・Mutable"/></a> <a href="./questions/02852-medium-omitbytype/README.md" target="_blank"><img src="https://img.shields.io/badge/-2852%E3%83%BBOmitByType-d9901a" alt="2852・OmitByType"/></a> <a href="./questions/02946-medium-objectentries/README.md" target="_blank"><img src="https://img.shields.io/badge/-2946%E3%83%BBObjectEntries-d9901a" alt="2946・ObjectEntries"/></a> <a href="./questions/03062-medium-shift/README.md" target="_blank"><img src="https://img.shields.io/badge/-3062%E3%83%BBShift-d9901a" alt="3062・Shift"/></a> <a href="./questions/03188-medium-tuple-to-nested-object/README.md" target="_blank"><img src="https://img.shields.io/badge/-3188%E3%83%BBTuple%20to%20Nested%20Object-d9901a" alt="3188・Tuple to Nested Object"/></a> <a href="./questions/03192-medium-reverse/README.zh-CN.md" target="_blank"><img src="https://img.shields.io/badge/-3192%E3%83%BBReverse-d9901a" alt="3192・Reverse"/></a> <a href="./questions/03196-medium-flip-arguments/README.md" target="_blank"><img src="https://img.shields.io/badge/-3196%E3%83%BBFlip%20Arguments-d9901a" alt="3196・Flip Arguments"/></a> <a href="./questions/03243-medium-flattendepth/README.md" target="_blank"><img src="https://img.shields.io/badge/-3243%E3%83%BBFlattenDepth-d9901a" alt="3243・FlattenDepth"/></a> <a href="./questions/03326-medium-bem-style-string/README.md" target="_blank"><img src="https://img.shields.io/badge/-3326%E3%83%BBBEM%20style%20string-d9901a" alt="3326・BEM style string"/></a> <a href="./questions/03376-medium-inordertraversal/README.md" target="_blank"><img src="https://img.shields.io/badge/-3376%E3%83%BBInorderTraversal-d9901a" alt="3376・InorderTraversal"/></a> <a href="./questions/04179-medium-flip/README.md" target="_blank"><img src="https://img.shields.io/badge/-4179%E3%83%BBFlip-d9901a" alt="4179・Flip"/></a> <a href="./questions/04182-medium-fibonacci-sequence/README.zh-CN.md" target="_blank"><img src="https://img.shields.io/badge/-4182%E3%83%BB%E6%96%90%E6%B3%A2%E9%82%A3%E5%A5%91%E5%BA%8F%E5%88%97-d9901a" alt="4182・斐波那契序列"/></a> <a href="./questions/04260-medium-nomiwase/README.md" target="_blank"><img src="https://img.shields.io/badge/-4260%E3%83%BBAllCombinations-d9901a" alt="4260・AllCombinations"/></a> <a href="./questions/04425-medium-greater-than/README.md" target="_blank"><img src="https://img.shields.io/badge/-4425%E3%83%BBGreater%20Than-d9901a" alt="4425・Greater Than"/></a> <a href="./questions/04471-medium-zip/README.md" target="_blank"><img src="https://img.shields.io/badge/-4471%E3%83%BBZip-d9901a" alt="4471・Zip"/></a> <a href="./questions/04484-medium-istuple/README.md" target="_blank"><img src="https://img.shields.io/badge/-4484%E3%83%BBIsTuple-d9901a" alt="4484・IsTuple"/></a> <a href="./questions/04499-medium-chunk/README.md" target="_blank"><img src="https://img.shields.io/badge/-4499%E3%83%BBChunk-d9901a" alt="4499・Chunk"/></a> <a href="./questions/04518-medium-fill/README.md" target="_blank"><img src="https://img.shields.io/badge/-4518%E3%83%BBFill-d9901a" alt="4518・Fill"/></a> <a href="./questions/04803-medium-trim-right/README.zh-CN.md" target="_blank"><img src="https://img.shields.io/badge/-4803%E3%83%BBTrim%20Right-d9901a" alt="4803・Trim Right"/></a> <a href="./questions/05117-medium-without/README.zh-CN.md" target="_blank"><img src="https://img.shields.io/badge/-5117%E3%83%BB%E5%8E%BB%E9%99%A4%E6%95%B0%E7%BB%84%E6%8C%87%E5%AE%9A%E5%85%83%E7%B4%A0-d9901a" alt="5117・去除数组指定元素"/></a> <a href="./questions/05140-medium-trunc/README.md" target="_blank"><img src="https://img.shields.io/badge/-5140%E3%83%BBTrunc-d9901a" alt="5140・Trunc"/></a> <a href="./questions/05153-medium-indexof/README.md" target="_blank"><img src="https://img.shields.io/badge/-5153%E3%83%BBIndexOf-d9901a" alt="5153・IndexOf"/></a> <a href="./questions/05310-medium-join/README.md" target="_blank"><img src="https://img.shields.io/badge/-5310%E3%83%BBJoin-d9901a" alt="5310・Join"/></a> <a href="./questions/05317-medium-lastindexof/README.zh-CN.md" target="_blank"><img src="https://img.shields.io/badge/-5317%E3%83%BBLastIndexOf-d9901a" alt="5317・LastIndexOf"/></a> <a href="./questions/05360-medium-unique/README.zh-CN.md" target="_blank"><img src="https://img.shields.io/badge/-5360%E3%83%BBUnique-d9901a" alt="5360・Unique"/></a> <a href="./questions/05821-medium-maptypes/README.md" target="_blank"><img src="https://img.shields.io/badge/-5821%E3%83%BBMapTypes-d9901a" alt="5821・MapTypes"/></a> <a href="./questions/07544-medium-construct-tuple/README.zh-CN.md" target="_blank"><img src="https://img.shields.io/badge/-7544%E3%83%BBConstruct%20Tuple-d9901a" alt="7544・Construct Tuple"/></a> <a href="./questions/08640-medium-number-range/README.md" target="_blank"><img src="https://img.shields.io/badge/-8640%E3%83%BBNumber%20Range-d9901a" alt="8640・Number Range"/></a> <a href="./questions/08767-medium-combination/README.md" target="_blank"><img src="https://img.shields.io/badge/-8767%E3%83%BBCombination-d9901a" alt="8767・Combination"/></a> <a href="./questions/08987-medium-subsequence/README.md" target="_blank"><img src="https://img.shields.io/badge/-8987%E3%83%BBSubsequence-d9901a" alt="8987・Subsequence"/></a> <a href="./questions/09142-medium-checkrepeatedchars/README.zh-CN.md" target="_blank"><img src="https://img.shields.io/badge/-9142%E3%83%BBCheckRepeatedChars-d9901a" alt="9142・CheckRepeatedChars"/></a> <a href="./questions/09286-medium-firstuniquecharindex/README.md" target="_blank"><img src="https://img.shields.io/badge/-9286%E3%83%BBFirstUniqueCharIndex-d9901a" alt="9286・FirstUniqueCharIndex"/></a> <a href="./questions/09616-medium-parse-url-params/README.md" target="_blank"><img src="https://img.shields.io/badge/-9616%E3%83%BBParse%20URL%20Params-d9901a" alt="9616・Parse URL Params"/></a> <a href="./questions/09896-medium-get-middle-element/README.zh-CN.md" target="_blank"><img src="https://img.shields.io/badge/-9896%E3%83%BB%E8%8E%B7%E5%8F%96%E6%95%B0%E7%BB%84%E7%9A%84%E4%B8%AD%E9%97%B4%E5%85%83%E7%B4%A0-d9901a" alt="9896・获取数组的中间元素"/></a> <a href="./questions/09898-medium-zhao-chu-mu-biao-shu-zu-zhong-zhi-chu-xian-guo-yi-ci-de-yuan-su/README.zh-CN.md" target="_blank"><img src="https://img.shields.io/badge/-9898%E3%83%BB%E6%89%BE%E5%87%BA%E7%9B%AE%E6%A0%87%E6%95%B0%E7%BB%84%E4%B8%AD%E5%8F%AA%E5%87%BA%E7%8E%B0%E8%BF%87%E4%B8%80%E6%AC%A1%E7%9A%84%E5%85%83%E7%B4%A0-d9901a" alt="9898・找出目标数组中只出现过一次的元素"/></a> <a href="./questions/09989-medium-tong-ji-shu-zu-zhong-de-yuan-su-ge-shu/README.zh-CN.md" target="_blank"><img src="https://img.shields.io/badge/-9989%E3%83%BB%E7%BB%9F%E8%AE%A1%E6%95%B0%E7%BB%84%E4%B8%AD%E7%9A%84%E5%85%83%E7%B4%A0%E4%B8%AA%E6%95%B0-d9901a" alt="9989・统计数组中的元素个数"/></a> <a href="./questions/10969-medium-integer/README.zh-CN.md" target="_blank"><img src="https://img.shields.io/badge/-10969%E3%83%BB%E6%95%B4%E6%95%B0-d9901a" alt="10969・整数"/></a> <a href="./questions/16259-medium-to-primitive/README.zh-CN.md" target="_blank"><img src="https://img.shields.io/badge/-16259%E3%83%BB%E5%B0%86%E7%B1%BB%E5%9E%8B%E4%B8%BA%E5%AD%97%E9%9D%A2%E7%B1%BB%E5%9E%8B%EF%BC%88%E6%A0%87%E7%AD%BE%E7%B1%BB%E5%9E%8B%EF%BC%89%E7%9A%84%E5%B1%9E%E6%80%A7%EF%BC%8C%E8%BD%AC%E6%8D%A2%E4%B8%BA%E5%9F%BA%E6%9C%AC%E7%B1%BB%E5%9E%8B%E3%80%82-d9901a" alt="16259・将类型为字面类型（标签类型）的属性，转换为基本类型。"/></a> <a href="./questions/17973-medium-deepmutable/README.zh-CN.md" target="_blank"><img src="https://img.shields.io/badge/-17973%E3%83%BBDeepMutable-d9901a" alt="17973・DeepMutable"/></a> <a href="./questions/18142-medium-all/README.zh-CN.md" target="_blank"><img src="https://img.shields.io/badge/-18142%E3%83%BBAll-d9901a" alt="18142・All"/></a> <a href="./questions/18220-medium-filter/README.md" target="_blank"><img src="https://img.shields.io/badge/-18220%E3%83%BBFilter-d9901a" alt="18220・Filter"/></a> <a href="./questions/19749-medium-isequal/README.md" target="_blank"><img src="https://img.shields.io/badge/-19749%E3%83%BBIsEqual-d9901a" alt="19749・IsEqual"/></a> <a href="./questions/21104-medium-findall/README.md" target="_blank"><img src="https://img.shields.io/badge/-21104%E3%83%BBFindAll-d9901a" alt="21104・FindAll"/></a> <a href="./questions/21106-medium-zu-he-jian-lei-xing-combination-key-type/README.zh-CN.md" target="_blank"><img src="https://img.shields.io/badge/-21106%E3%83%BB%E7%BB%84%E5%90%88%E9%94%AE%E7%B1%BB%E5%9E%8B%20Combination%20key%20type-d9901a" alt="21106・组合键类型 Combination key type"/></a> <a href="./questions/21220-medium-permutations-of-tuple/README.md" target="_blank"><img src="https://img.shields.io/badge/-21220%E3%83%BBPermutations%20of%20Tuple-d9901a" alt="21220・Permutations of Tuple"/></a> <a href="./questions/25170-medium-replace-first/README.md" target="_blank"><img src="https://img.shields.io/badge/-25170%E3%83%BBReplace%20First-d9901a" alt="25170・Replace First"/></a> <a href="./questions/25270-medium-transpose/README.md" target="_blank"><img src="https://img.shields.io/badge/-25270%E3%83%BBTranspose-d9901a" alt="25270・Transpose"/></a> <a href="./questions/26401-medium-json-schema-to-typescript/README.md" target="_blank"><img src="https://img.shields.io/badge/-26401%E3%83%BBJSON%20Schema%20to%20TypeScript-d9901a" alt="26401・JSON Schema to TypeScript"/></a> <a href="./questions/27133-medium-square/README.md" target="_blank"><img src="https://img.shields.io/badge/-27133%E3%83%BBSquare-d9901a" alt="27133・Square"/></a> <a href="./questions/27152-medium-triangular-number/README.md" target="_blank"><img src="https://img.shields.io/badge/-27152%E3%83%BBTriangular%20number-d9901a" alt="27152・Triangular number"/></a> <a href="./questions/27862-medium-cartesianproduct/README.md" target="_blank"><img src="https://img.shields.io/badge/-27862%E3%83%BBCartesianProduct-d9901a" alt="27862・CartesianProduct"/></a> <a href="./questions/27932-medium-mergeall/README.md" target="_blank"><img src="https://img.shields.io/badge/-27932%E3%83%BBMergeAll-d9901a" alt="27932・MergeAll"/></a> <a href="./questions/27958-medium-checkrepeatedtuple/README.zh-CN.md" target="_blank"><img src="https://img.shields.io/badge/-27958%E3%83%BBCheckRepeatedTuple-d9901a" alt="27958・CheckRepeatedTuple"/></a> <a href="./questions/28333-medium-public-type/README.md" target="_blank"><img src="https://img.shields.io/badge/-28333%E3%83%BBPublic%20Type-d9901a" alt="28333・Public Type"/></a> <a href="./questions/29650-medium-extracttoobject/README.md" target="_blank"><img src="https://img.shields.io/badge/-29650%E3%83%BBExtractToObject-d9901a" alt="29650・ExtractToObject"/></a> <a href="./questions/29785-medium-deep-omit/README.md" target="_blank"><img src="https://img.shields.io/badge/-29785%E3%83%BBDeep%20Omit-d9901a" alt="29785・Deep Omit"/></a> <a href="./questions/30301-medium-isodd/README.md" target="_blank"><img src="https://img.shields.io/badge/-30301%E3%83%BBIsOdd-d9901a" alt="30301・IsOdd"/></a> <a href="./questions/30430-medium-tower-of-hanoi/README.md" target="_blank"><img src="https://img.shields.io/badge/-30430%E3%83%BBTower%20of%20hanoi-d9901a" alt="30430・Tower of hanoi"/></a> <a href="./questions/30958-medium-pascals-triangle/README.md" target="_blank"><img src="https://img.shields.io/badge/-30958%E3%83%BBPascal's%20triangle-d9901a" alt="30958・Pascal's triangle"/></a> <a href="./questions/30970-medium-shitariteraru/README.md" target="_blank"><img src="https://img.shields.io/badge/-30970%E3%83%BBIsFixedStringLiteralType-d9901a" alt="30970・IsFixedStringLiteralType"/></a> <a href="./questions/34007-medium-compare-array-length/README.md" target="_blank"><img src="https://img.shields.io/badge/-34007%E3%83%BBCompare%20Array%20Length-d9901a" alt="34007・Compare Array Length"/></a> <a href="./questions/34857-medium-defined-partial-record/README.md" target="_blank"><img src="https://img.shields.io/badge/-34857%E3%83%BBDefined%20Partial%20Record-d9901a" alt="34857・Defined Partial Record"/></a> <a href="./questions/35045-medium-longest-common-prefix/README.md" target="_blank"><img src="https://img.shields.io/badge/-35045%E3%83%BBLongest%20Common%20Prefix-d9901a" alt="35045・Longest Common Prefix"/></a> <a href="./questions/35191-medium-trace/README.md" target="_blank"><img src="https://img.shields.io/badge/-35191%E3%83%BBTrace-d9901a" alt="35191・Trace"/></a> <a href="./questions/35252-medium-isalphabet/README.md" target="_blank"><img src="https://img.shields.io/badge/-35252%E3%83%BBIsAlphabet-d9901a" alt="35252・IsAlphabet"/></a> <a href="./questions/35991-medium-myuppercase/README.md" target="_blank"><img src="https://img.shields.io/badge/-35991%E3%83%BBMyUppercase-d9901a" alt="35991・MyUppercase"/></a> <br><br><img src="https://img.shields.io/badge/%E5%9B%B0%E9%9A%BE-55-de3d37" alt="55"/><br><a href="./questions/00006-hard-simple-vue/README.zh-CN.md" target="_blank"><img src="https://img.shields.io/badge/-6%E3%83%BB%E7%AE%80%E5%8D%95%E7%9A%84%20Vue%20%E7%B1%BB%E5%9E%8B-de3d37" alt="6・简单的 Vue 类型"/></a> <a href="./questions/00017-hard-currying-1/README.zh-CN.md" target="_blank"><img src="https://img.shields.io/badge/-17%E3%83%BB%E6%9F%AF%E9%87%8C%E5%8C%96%201-de3d37" alt="17・柯里化 1"/></a> <a href="./questions/00055-hard-union-to-intersection/README.zh-CN.md" target="_blank"><img src="https://img.shields.io/badge/-55%E3%83%BB%E8%81%94%E5%90%88%E7%B1%BB%E5%9E%8B%E8%BD%AC%E5%8C%96%E4%B8%BA%E4%BA%A4%E5%8F%89%E7%B1%BB%E5%9E%8B-de3d37" alt="55・联合类型转化为交叉类型"/></a> <a href="./questions/00057-hard-get-required/README.zh-CN.md" target="_blank"><img src="https://img.shields.io/badge/-57%E3%83%BB%E8%8E%B7%E5%BE%97%E5%BF%85%E9%9C%80%E7%9A%84%E5%B1%9E%E6%80%A7-de3d37" alt="57・获得必需的属性"/></a> <a href="./questions/00059-hard-get-optional/README.zh-CN.md" target="_blank"><img src="https://img.shields.io/badge/-59%E3%83%BB%E8%8E%B7%E5%BE%97%E5%8F%AF%E9%80%89%E5%B1%9E%E6%80%A7-de3d37" alt="59・获得可选属性"/></a> <a href="./questions/00089-hard-required-keys/README.zh-CN.md" target="_blank"><img src="https://img.shields.io/badge/-89%E3%83%BB%E5%BF%85%E9%9C%80%E7%9A%84%E9%94%AE-de3d37" alt="89・必需的键"/></a> <a href="./questions/00090-hard-optional-keys/README.zh-CN.md" target="_blank"><img src="https://img.shields.io/badge/-90%E3%83%BB%E5%8F%AF%E9%80%89%E7%B1%BB%E5%9E%8B%E7%9A%84%E9%94%AE-de3d37" alt="90・可选类型的键"/></a> <a href="./questions/00112-hard-capitalizewords/README.zh-CN.md" target="_blank"><img src="https://img.shields.io/badge/-112%E3%83%BBCapitalize%20Words-de3d37" alt="112・Capitalize Words"/></a> <a href="./questions/00114-hard-camelcase/README.zh-CN.md" target="_blank"><img src="https://img.shields.io/badge/-114%E3%83%BBCamelCase-de3d37" alt="114・CamelCase"/></a> <a href="./questions/00147-hard-c-printf-parser/README.md" target="_blank"><img src="https://img.shields.io/badge/-147%E3%83%BBC--printf%20Parser-de3d37" alt="147・C-printf Parser"/></a> <a href="./questions/00213-hard-vue-basic-props/README.md" target="_blank"><img src="https://img.shields.io/badge/-213%E3%83%BBVue%20Basic%20Props-de3d37" alt="213・Vue Basic Props"/></a> <a href="./questions/00223-hard-isany/README.md" target="_blank"><img src="https://img.shields.io/badge/-223%E3%83%BBIsAny-de3d37" alt="223・IsAny"/></a> <a href="./questions/00270-hard-typed-get/README.md" target="_blank"><img src="https://img.shields.io/badge/-270%E3%83%BBTyped%20Get-de3d37" alt="270・Typed Get"/></a> <a href="./questions/00300-hard-string-to-number/README.md" target="_blank"><img src="https://img.shields.io/badge/-300%E3%83%BBString%20to%20Number-de3d37" alt="300・String to Number"/></a> <a href="./questions/00399-hard-tuple-filter/README.md" target="_blank"><img src="https://img.shields.io/badge/-399%E3%83%BBTuple%20Filter-de3d37" alt="399・Tuple Filter"/></a> <a href="./questions/00472-hard-tuple-to-enum-object/README.zh-CN.md" target="_blank"><img src="https://img.shields.io/badge/-472%E3%83%BBTuple%20to%20Enum%20Object-de3d37" alt="472・Tuple to Enum Object"/></a> <a href="./questions/00545-hard-printf/README.md" target="_blank"><img src="https://img.shields.io/badge/-545%E3%83%BBprintf-de3d37" alt="545・printf"/></a> <a href="./questions/00553-hard-deep-object-to-unique/README.md" target="_blank"><img src="https://img.shields.io/badge/-553%E3%83%BBDeep%20object%20to%20unique-de3d37" alt="553・Deep object to unique"/></a> <a href="./questions/00651-hard-length-of-string-2/README.md" target="_blank"><img src="https://img.shields.io/badge/-651%E3%83%BBLength%20of%20String%202-de3d37" alt="651・Length of String 2"/></a> <a href="./questions/00730-hard-union-to-tuple/README.md" target="_blank"><img src="https://img.shields.io/badge/-730%E3%83%BBUnion%20to%20Tuple-de3d37" alt="730・Union to Tuple"/></a> <a href="./questions/00847-hard-string-join/README.md" target="_blank"><img src="https://img.shields.io/badge/-847%E3%83%BBString%20Join-de3d37" alt="847・String Join"/></a> <a href="./questions/00956-hard-deeppick/README.md" target="_blank"><img src="https://img.shields.io/badge/-956%E3%83%BBDeepPick-de3d37" alt="956・DeepPick"/></a> <a href="./questions/01290-hard-pinia/README.md" target="_blank"><img src="https://img.shields.io/badge/-1290%E3%83%BBPinia-de3d37" alt="1290・Pinia"/></a> <a href="./questions/01383-hard-camelize/README.zh-CN.md" target="_blank"><img src="https://img.shields.io/badge/-1383%E3%83%BBCamelize-de3d37" alt="1383・Camelize"/></a> <a href="./questions/02059-hard-drop-string/README.md" target="_blank"><img src="https://img.shields.io/badge/-2059%E3%83%BBDrop%20String-de3d37" alt="2059・Drop String"/></a> <a href="./questions/02822-hard-split/README.md" target="_blank"><img src="https://img.shields.io/badge/-2822%E3%83%BBSplit-de3d37" alt="2822・Split"/></a> <a href="./questions/02828-hard-classpublickeys/README.md" target="_blank"><img src="https://img.shields.io/badge/-2828%E3%83%BBClassPublicKeys-de3d37" alt="2828・ClassPublicKeys"/></a> <a href="./questions/02857-hard-isrequiredkey/README.md" target="_blank"><img src="https://img.shields.io/badge/-2857%E3%83%BBIsRequiredKey-de3d37" alt="2857・IsRequiredKey"/></a> <a href="./questions/02949-hard-objectfromentries/README.md" target="_blank"><img src="https://img.shields.io/badge/-2949%E3%83%BBObjectFromEntries-de3d37" alt="2949・ObjectFromEntries"/></a> <a href="./questions/04037-hard-ispalindrome/README.md" target="_blank"><img src="https://img.shields.io/badge/-4037%E3%83%BBIsPalindrome-de3d37" alt="4037・IsPalindrome"/></a> <a href="./questions/05181-hard-mutable-keys/README.md" target="_blank"><img src="https://img.shields.io/badge/-5181%E3%83%BBMutable%20Keys-de3d37" alt="5181・Mutable Keys"/></a> <a href="./questions/05423-hard-intersection/README.md" target="_blank"><img src="https://img.shields.io/badge/-5423%E3%83%BBIntersection-de3d37" alt="5423・Intersection"/></a> <a href="./questions/06141-hard-binary-to-decimal/README.md" target="_blank"><img src="https://img.shields.io/badge/-6141%E3%83%BBBinary%20to%20Decimal-de3d37" alt="6141・Binary to Decimal"/></a> <a href="./questions/07258-hard-object-key-paths/README.md" target="_blank"><img src="https://img.shields.io/badge/-7258%E3%83%BBObject%20Key%20Paths-de3d37" alt="7258・Object Key Paths"/></a> <a href="./questions/08804-hard-two-sum/README.zh-CN.md" target="_blank"><img src="https://img.shields.io/badge/-8804%E3%83%BB%E4%B8%A4%E6%95%B0%E4%B9%8B%E5%92%8C-de3d37" alt="8804・两数之和"/></a> <a href="./questions/09155-hard-validdate/README.md" target="_blank"><img src="https://img.shields.io/badge/-9155%E3%83%BBValidDate-de3d37" alt="9155・ValidDate"/></a> <a href="./questions/09160-hard-assign/README.md" target="_blank"><img src="https://img.shields.io/badge/-9160%E3%83%BBAssign-de3d37" alt="9160・Assign"/></a> <a href="./questions/09384-hard-maximum/README.md" target="_blank"><img src="https://img.shields.io/badge/-9384%E3%83%BBMaximum-de3d37" alt="9384・Maximum"/></a> <a href="./questions/09775-hard-capitalize-nest-object-keys/README.md" target="_blank"><img src="https://img.shields.io/badge/-9775%E3%83%BBCapitalize%20Nest%20Object%20Keys-de3d37" alt="9775・Capitalize Nest Object Keys"/></a> <a href="./questions/13580-hard-replace-union/README.md" target="_blank"><img src="https://img.shields.io/badge/-13580%E3%83%BBReplace%20Union-de3d37" alt="13580・Replace Union"/></a> <a href="./questions/14080-hard-fizzbuzz/README.md" target="_blank"><img src="https://img.shields.io/badge/-14080%E3%83%BBFizzBuzz-de3d37" alt="14080・FizzBuzz"/></a> <a href="./questions/14188-hard-run-length-encoding/README.md" target="_blank"><img src="https://img.shields.io/badge/-14188%E3%83%BBRun--length%20encoding-de3d37" alt="14188・Run-length encoding"/></a> <a href="./questions/15260-hard-tree-path-array/README.md" target="_blank"><img src="https://img.shields.io/badge/-15260%E3%83%BBTree%20path%20array-de3d37" alt="15260・Tree path array"/></a> <a href="./questions/19458-hard-snakecase/README.md" target="_blank"><img src="https://img.shields.io/badge/-19458%E3%83%BBSnakeCase-de3d37" alt="19458・SnakeCase"/></a> <a href="./questions/25747-hard-isnegativenumber/README.md" target="_blank"><img src="https://img.shields.io/badge/-25747%E3%83%BBIsNegativeNumber-de3d37" alt="25747・IsNegativeNumber"/></a> <a href="./questions/28143-hard-optionalundefined/README.md" target="_blank"><img src="https://img.shields.io/badge/-28143%E3%83%BBOptionalUndefined-de3d37" alt="28143・OptionalUndefined"/></a> <a href="./questions/30178-hard-unique-items/README.md" target="_blank"><img src="https://img.shields.io/badge/-30178%E3%83%BBUnique%20Items-de3d37" alt="30178・Unique Items"/></a> <a href="./questions/30575-hard-bitwisexor/README.md" target="_blank"><img src="https://img.shields.io/badge/-30575%E3%83%BBBitwiseXOR-de3d37" alt="30575・BitwiseXOR"/></a> <a href="./questions/31797-hard-sudoku/README.md" target="_blank"><img src="https://img.shields.io/badge/-31797%E3%83%BBSudoku-de3d37" alt="31797・Sudoku"/></a> <a href="./questions/31824-hard-length-of-string-3/README.md" target="_blank"><img src="https://img.shields.io/badge/-31824%E3%83%BBLength%20of%20String%203-de3d37" alt="31824・Length of String 3"/></a> <a href="./questions/32427-hard-unbox/README.md" target="_blank"><img src="https://img.shields.io/badge/-32427%E3%83%BBUnbox-de3d37" alt="32427・Unbox"/></a> <a href="./questions/32532-hard-binary-addition/README.md" target="_blank"><img src="https://img.shields.io/badge/-32532%E3%83%BBBinary%20Addition-de3d37" alt="32532・Binary Addition"/></a> <a href="./questions/33763-hard-union-to-object-from-key/README.md" target="_blank"><img src="https://img.shields.io/badge/-33763%E3%83%BBUnion%20to%20Object%20from%20key-de3d37" alt="33763・Union to Object from key"/></a> <a href="./questions/34286-hard-take-elements/README.md" target="_blank"><img src="https://img.shields.io/badge/-34286%E3%83%BBTake%20Elements-de3d37" alt="34286・Take Elements"/></a> <a href="./questions/35314-hard-valid-sudoku/README.md" target="_blank"><img src="https://img.shields.io/badge/-35314%E3%83%BBValid%20Sudoku-de3d37" alt="35314・Valid Sudoku"/></a> <br><br><img src="https://img.shields.io/badge/%E5%9C%B0%E7%8B%B1-17-b11b8d" alt="17"/><br><a href="./questions/00005-extreme-readonly-keys/README.zh-CN.md" target="_blank"><img src="https://img.shields.io/badge/-5%E3%83%BB%E8%8E%B7%E5%8F%96%E5%8F%AA%E8%AF%BB%E5%B1%9E%E6%80%A7-b11b8d" alt="5・获取只读属性"/></a> <a href="./questions/00151-extreme-query-string-parser/README.md" target="_blank"><img src="https://img.shields.io/badge/-151%E3%83%BBQuery%20String%20Parser-b11b8d" alt="151・Query String Parser"/></a> <a href="./questions/00216-extreme-slice/README.md" target="_blank"><img src="https://img.shields.io/badge/-216%E3%83%BBSlice-b11b8d" alt="216・Slice"/></a> <a href="./questions/00274-extreme-integers-comparator/README.md" target="_blank"><img src="https://img.shields.io/badge/-274%E3%83%BBIntegers%20Comparator-b11b8d" alt="274・Integers Comparator"/></a> <a href="./questions/00462-extreme-currying-2/README.zh-CN.md" target="_blank"><img src="https://img.shields.io/badge/-462%E3%83%BB%E6%9F%AF%E9%87%8C%E5%8C%96%202-b11b8d" alt="462・柯里化 2"/></a> <a href="./questions/00476-extreme-sum/README.md" target="_blank"><img src="https://img.shields.io/badge/-476%E3%83%BBSum-b11b8d" alt="476・Sum"/></a> <a href="./questions/00517-extreme-multiply/README.md" target="_blank"><img src="https://img.shields.io/badge/-517%E3%83%BBMultiply-b11b8d" alt="517・Multiply"/></a> <a href="./questions/00697-extreme-tag/README.md" target="_blank"><img src="https://img.shields.io/badge/-697%E3%83%BBTag-b11b8d" alt="697・Tag"/></a> <a href="./questions/00734-extreme-inclusive-range/README.md" target="_blank"><img src="https://img.shields.io/badge/-734%E3%83%BBInclusive%20Range-b11b8d" alt="734・Inclusive Range"/></a> <a href="./questions/00741-extreme-sort/README.md" target="_blank"><img src="https://img.shields.io/badge/-741%E3%83%BBSort-b11b8d" alt="741・Sort"/></a> <a href="./questions/00869-extreme-distributeunions/README.md" target="_blank"><img src="https://img.shields.io/badge/-869%E3%83%BBDistributeUnions-b11b8d" alt="869・DistributeUnions"/></a> <a href="./questions/00925-extreme-assert-array-index/README.md" target="_blank"><img src="https://img.shields.io/badge/-925%E3%83%BBAssert%20Array%20Index-b11b8d" alt="925・Assert Array Index"/></a> <a href="./questions/06228-extreme-json-parser/README.md" target="_blank"><img src="https://img.shields.io/badge/-6228%E3%83%BBJSON%20Parser-b11b8d" alt="6228・JSON Parser"/></a> <a href="./questions/07561-extreme-subtract/README.md" target="_blank"><img src="https://img.shields.io/badge/-7561%E3%83%BBSubtract-b11b8d" alt="7561・Subtract"/></a> <a href="./questions/31447-extreme-countreversepairs/README.md" target="_blank"><img src="https://img.shields.io/badge/-31447%E3%83%BBCountReversePairs-b11b8d" alt="31447・CountReversePairs"/></a> <a href="./questions/31997-extreme-parameter-intersection/README.md" target="_blank"><img src="https://img.shields.io/badge/-31997%E3%83%BBParameter%20Intersection-b11b8d" alt="31997・Parameter Intersection"/></a> <a href="./questions/33345-extreme-dynamic-route/README.md" target="_blank"><img src="https://img.shields.io/badge/-33345%E3%83%BBDynamic%20Route-b11b8d" alt="33345・Dynamic Route"/></a> <br><details><summary>按标签</summary><br><table><tbody><tr><td><img src="https://img.shields.io/badge/-%23JSON-999" alt="#JSON"/></td><td><a href="./questions/26401-medium-json-schema-to-typescript/README.md" target="_blank"><img src="https://img.shields.io/badge/-26401%E3%83%BBJSON%20Schema%20to%20TypeScript-d9901a" alt="26401・JSON Schema to TypeScript"/></a> <a href="./questions/06228-extreme-json-parser/README.md" target="_blank"><img src="https://img.shields.io/badge/-6228%E3%83%BBJSON%20Parser-b11b8d" alt="6228・JSON Parser"/></a> </td></tr><tr><td><img src="https://img.shields.io/badge/-%23application-999" alt="#application"/></td><td><a href="./questions/00012-medium-chainable-options/README.zh-CN.md" target="_blank"><img src="https://img.shields.io/badge/-12%E3%83%BB%E5%8F%AF%E4%B8%B2%E8%81%94%E6%9E%84%E9%80%A0%E5%99%A8-d9901a" alt="12・可串联构造器"/></a> <a href="./questions/08767-medium-combination/README.md" target="_blank"><img src="https://img.shields.io/badge/-8767%E3%83%BBCombination-d9901a" alt="8767・Combination"/></a> <a href="./questions/00006-hard-simple-vue/README.zh-CN.md" target="_blank"><img src="https://img.shields.io/badge/-6%E3%83%BB%E7%AE%80%E5%8D%95%E7%9A%84%20Vue%20%E7%B1%BB%E5%9E%8B-de3d37" alt="6・简单的 Vue 类型"/></a> <a href="./questions/00213-hard-vue-basic-props/README.md" target="_blank"><img src="https://img.shields.io/badge/-213%E3%83%BBVue%20Basic%20Props-de3d37" alt="213・Vue Basic Props"/></a> <a href="./questions/30178-hard-unique-items/README.md" target="_blank"><img src="https://img.shields.io/badge/-30178%E3%83%BBUnique%20Items-de3d37" alt="30178・Unique Items"/></a> </td></tr><tr><td><img src="https://img.shields.io/badge/-%23arguments-999" alt="#arguments"/></td><td><a href="./questions/00191-medium-append-argument/README.zh-CN.md" target="_blank"><img src="https://img.shields.io/badge/-191%E3%83%BB%E8%BF%BD%E5%8A%A0%E5%8F%82%E6%95%B0-d9901a" alt="191・追加参数"/></a> <a href="./questions/03196-medium-flip-arguments/README.md" target="_blank"><img src="https://img.shields.io/badge/-3196%E3%83%BBFlip%20Arguments-d9901a" alt="3196・Flip Arguments"/></a> </td></tr><tr><td><img src="https://img.shields.io/badge/-%23array-999" alt="#array"/></td><td><a href="./questions/00014-easy-first/README.zh-CN.md" target="_blank"><img src="https://img.shields.io/badge/-14%E3%83%BB%E7%AC%AC%E4%B8%80%E4%B8%AA%E5%85%83%E7%B4%A0-7aad0c" alt="14・第一个元素"/></a> <a href="./questions/00533-easy-concat/README.zh-CN.md" target="_blank"><img src="https://img.shields.io/badge/-533%E3%83%BBConcat-7aad0c" alt="533・Concat"/></a> <a href="./questions/00898-easy-includes/README.zh-CN.md" target="_blank"><img src="https://img.shields.io/badge/-898%E3%83%BBIncludes-7aad0c" alt="898・Includes"/></a> <a href="./questions/03057-easy-push/README.zh-CN.md" target="_blank"><img src="https://img.shields.io/badge/-3057%E3%83%BBPush-7aad0c" alt="3057・Push"/></a> <a href="./questions/03060-easy-unshift/README.zh-CN.md" target="_blank"><img src="https://img.shields.io/badge/-3060%E3%83%BBUnshift-7aad0c" alt="3060・Unshift"/></a> <a href="./questions/00015-medium-last/README.zh-CN.md" target="_blank"><img src="https://img.shields.io/badge/-15%E3%83%BB%E6%9C%80%E5%90%8E%E4%B8%80%E4%B8%AA%E5%85%83%E7%B4%A0-d9901a" alt="15・最后一个元素"/></a> <a href="./questions/00016-medium-pop/README.zh-CN.md" target="_blank"><img src="https://img.shields.io/badge/-16%E3%83%BB%E6%8E%92%E9%99%A4%E6%9C%80%E5%90%8E%E4%B8%80%E9%A1%B9-d9901a" alt="16・排除最后一项"/></a> <a href="./questions/00020-medium-promise-all/README.zh-CN.md" target="_blank"><img src="https://img.shields.io/badge/-20%E3%83%BBPromise.all-d9901a" alt="20・Promise.all"/></a> <a href="./questions/00459-medium-flatten/README.zh-CN.md" target="_blank"><img src="https://img.shields.io/badge/-459%E3%83%BBFlatten-d9901a" alt="459・Flatten"/></a> <a href="./questions/00949-medium-anyof/README.zh-CN.md" target="_blank"><img src="https://img.shields.io/badge/-949%E3%83%BBAnyOf-d9901a" alt="949・AnyOf"/></a> <a href="./questions/03062-medium-shift/README.md" target="_blank"><img src="https://img.shields.io/badge/-3062%E3%83%BBShift-d9901a" alt="3062・Shift"/></a> <a href="./questions/03243-medium-flattendepth/README.md" target="_blank"><img src="https://img.shields.io/badge/-3243%E3%83%BBFlattenDepth-d9901a" alt="3243・FlattenDepth"/></a> <a href="./questions/04425-medium-greater-than/README.md" target="_blank"><img src="https://img.shields.io/badge/-4425%E3%83%BBGreater%20Than-d9901a" alt="4425・Greater Than"/></a> <a href="./questions/05153-medium-indexof/README.md" target="_blank"><img src="https://img.shields.io/badge/-5153%E3%83%BBIndexOf-d9901a" alt="5153・IndexOf"/></a> <a href="./questions/05310-medium-join/README.md" target="_blank"><img src="https://img.shields.io/badge/-5310%E3%83%BBJoin-d9901a" alt="5310・Join"/></a> <a href="./questions/05317-medium-lastindexof/README.zh-CN.md" target="_blank"><img src="https://img.shields.io/badge/-5317%E3%83%BBLastIndexOf-d9901a" alt="5317・LastIndexOf"/></a> <a href="./questions/05360-medium-unique/README.zh-CN.md" target="_blank"><img src="https://img.shields.io/badge/-5360%E3%83%BBUnique-d9901a" alt="5360・Unique"/></a> <a href="./questions/08767-medium-combination/README.md" target="_blank"><img src="https://img.shields.io/badge/-8767%E3%83%BBCombination-d9901a" alt="8767・Combination"/></a> <a href="./questions/18142-medium-all/README.zh-CN.md" target="_blank"><img src="https://img.shields.io/badge/-18142%E3%83%BBAll-d9901a" alt="18142・All"/></a> <a href="./questions/18220-medium-filter/README.md" target="_blank"><img src="https://img.shields.io/badge/-18220%E3%83%BBFilter-d9901a" alt="18220・Filter"/></a> <a href="./questions/25270-medium-transpose/README.md" target="_blank"><img src="https://img.shields.io/badge/-25270%E3%83%BBTranspose-d9901a" alt="25270・Transpose"/></a> <a href="./questions/27133-medium-square/README.md" target="_blank"><img src="https://img.shields.io/badge/-27133%E3%83%BBSquare-d9901a" alt="27133・Square"/></a> <a href="./questions/27152-medium-triangular-number/README.md" target="_blank"><img src="https://img.shields.io/badge/-27152%E3%83%BBTriangular%20number-d9901a" alt="27152・Triangular number"/></a> <a href="./questions/27932-medium-mergeall/README.md" target="_blank"><img src="https://img.shields.io/badge/-27932%E3%83%BBMergeAll-d9901a" alt="27932・MergeAll"/></a> <a href="./questions/30430-medium-tower-of-hanoi/README.md" target="_blank"><img src="https://img.shields.io/badge/-30430%E3%83%BBTower%20of%20hanoi-d9901a" alt="30430・Tower of hanoi"/></a> <a href="./questions/30958-medium-pascals-triangle/README.md" target="_blank"><img src="https://img.shields.io/badge/-30958%E3%83%BBPascal's%20triangle-d9901a" alt="30958・Pascal's triangle"/></a> <a href="./questions/34007-medium-compare-array-length/README.md" target="_blank"><img src="https://img.shields.io/badge/-34007%E3%83%BBCompare%20Array%20Length-d9901a" alt="34007・Compare Array Length"/></a> <a href="./questions/00017-hard-currying-1/README.zh-CN.md" target="_blank"><img src="https://img.shields.io/badge/-17%E3%83%BB%E6%9F%AF%E9%87%8C%E5%8C%96%201-de3d37" alt="17・柯里化 1"/></a> <a href="./questions/02822-hard-split/README.md" target="_blank"><img src="https://img.shields.io/badge/-2822%E3%83%BBSplit-de3d37" alt="2822・Split"/></a> <a href="./questions/05423-hard-intersection/README.md" target="_blank"><img src="https://img.shields.io/badge/-5423%E3%83%BBIntersection-de3d37" alt="5423・Intersection"/></a> <a href="./questions/08804-hard-two-sum/README.zh-CN.md" target="_blank"><img src="https://img.shields.io/badge/-8804%E3%83%BB%E4%B8%A4%E6%95%B0%E4%B9%8B%E5%92%8C-de3d37" alt="8804・两数之和"/></a> <a href="./questions/09160-hard-assign/README.md" target="_blank"><img src="https://img.shields.io/badge/-9160%E3%83%BBAssign-de3d37" alt="9160・Assign"/></a> <a href="./questions/09384-hard-maximum/README.md" target="_blank"><img src="https://img.shields.io/badge/-9384%E3%83%BBMaximum-de3d37" alt="9384・Maximum"/></a> <a href="./questions/09775-hard-capitalize-nest-object-keys/README.md" target="_blank"><img src="https://img.shields.io/badge/-9775%E3%83%BBCapitalize%20Nest%20Object%20Keys-de3d37" alt="9775・Capitalize Nest Object Keys"/></a> <a href="./questions/14080-hard-fizzbuzz/README.md" target="_blank"><img src="https://img.shields.io/badge/-14080%E3%83%BBFizzBuzz-de3d37" alt="14080・FizzBuzz"/></a> <a href="./questions/31797-hard-sudoku/README.md" target="_blank"><img src="https://img.shields.io/badge/-31797%E3%83%BBSudoku-de3d37" alt="31797・Sudoku"/></a> <a href="./questions/32427-hard-unbox/README.md" target="_blank"><img src="https://img.shields.io/badge/-32427%E3%83%BBUnbox-de3d37" alt="32427・Unbox"/></a> <a href="./questions/32532-hard-binary-addition/README.md" target="_blank"><img src="https://img.shields.io/badge/-32532%E3%83%BBBinary%20Addition-de3d37" alt="32532・Binary Addition"/></a> <a href="./questions/34286-hard-take-elements/README.md" target="_blank"><img src="https://img.shields.io/badge/-34286%E3%83%BBTake%20Elements-de3d37" alt="34286・Take Elements"/></a> <a href="./questions/35314-hard-valid-sudoku/README.md" target="_blank"><img src="https://img.shields.io/badge/-35314%E3%83%BBValid%20Sudoku-de3d37" alt="35314・Valid Sudoku"/></a> <a href="./questions/00216-extreme-slice/README.md" target="_blank"><img src="https://img.shields.io/badge/-216%E3%83%BBSlice-b11b8d" alt="216・Slice"/></a> <a href="./questions/00734-extreme-inclusive-range/README.md" target="_blank"><img src="https://img.shields.io/badge/-734%E3%83%BBInclusive%20Range-b11b8d" alt="734・Inclusive Range"/></a> <a href="./questions/00741-extreme-sort/README.md" target="_blank"><img src="https://img.shields.io/badge/-741%E3%83%BBSort-b11b8d" alt="741・Sort"/></a> <a href="./questions/00925-extreme-assert-array-index/README.md" target="_blank"><img src="https://img.shields.io/badge/-925%E3%83%BBAssert%20Array%20Index-b11b8d" alt="925・Assert Array Index"/></a> <a href="./questions/31997-extreme-parameter-intersection/README.md" target="_blank"><img src="https://img.shields.io/badge/-31997%E3%83%BBParameter%20Intersection-b11b8d" alt="31997・Parameter Intersection"/></a> </td></tr><tr><td><img src="https://img.shields.io/badge/-%23built--in-999" alt="#built-in"/></td><td><a href="./questions/00004-easy-pick/README.zh-CN.md" target="_blank"><img src="https://img.shields.io/badge/-4%E3%83%BB%E5%AE%9E%E7%8E%B0%20Pick-7aad0c" alt="4・实现 Pick"/></a> <a href="./questions/00007-easy-readonly/README.zh-CN.md" target="_blank"><img src="https://img.shields.io/badge/-7%E3%83%BB%E5%AF%B9%E8%B1%A1%E5%B1%9E%E6%80%A7%E5%8F%AA%E8%AF%BB-7aad0c" alt="7・对象属性只读"/></a> <a href="./questions/00043-easy-exclude/README.zh-CN.md" target="_blank"><img src="https://img.shields.io/badge/-43%E3%83%BB%E5%AE%9E%E7%8E%B0%20Exclude-7aad0c" alt="43・实现 Exclude"/></a> <a href="./questions/00189-easy-awaited/README.zh-CN.md" target="_blank"><img src="https://img.shields.io/badge/-189%E3%83%BBAwaited-7aad0c" alt="189・Awaited"/></a> <a href="./questions/03312-easy-parameters/README.zh-CN.md" target="_blank"><img src="https://img.shields.io/badge/-3312%E3%83%BBParameters-7aad0c" alt="3312・Parameters"/></a> <a href="./questions/00002-medium-return-type/README.zh-CN.md" target="_blank"><img src="https://img.shields.io/badge/-2%E3%83%BB%E8%8E%B7%E5%8F%96%E5%87%BD%E6%95%B0%E8%BF%94%E5%9B%9E%E7%B1%BB%E5%9E%8B-d9901a" alt="2・获取函数返回类型"/></a> <a href="./questions/00003-medium-omit/README.zh-CN.md" target="_blank"><img src="https://img.shields.io/badge/-3%E3%83%BB%E5%AE%9E%E7%8E%B0%20Omit-d9901a" alt="3・实现 Omit"/></a> </td></tr><tr><td><img src="https://img.shields.io/badge/-%23cif-999" alt="#cif"/></td><td><a href="./questions/30178-hard-unique-items/README.md" target="_blank"><img src="https://img.shields.io/badge/-30178%E3%83%BBUnique%20Items-de3d37" alt="30178・Unique Items"/></a> </td></tr><tr><td><img src="https://img.shields.io/badge/-%23conditional%20type-999" alt="#conditional type"/></td><td><a href="./questions/21220-medium-permutations-of-tuple/README.md" target="_blank"><img src="https://img.shields.io/badge/-21220%E3%83%BBPermutations%20of%20Tuple-d9901a" alt="21220・Permutations of Tuple"/></a> </td></tr><tr><td><img src="https://img.shields.io/badge/-%23deep-999" alt="#deep"/></td><td><a href="./questions/00009-medium-deep-readonly/README.zh-CN.md" target="_blank"><img src="https://img.shields.io/badge/-9%E3%83%BB%E5%AF%B9%E8%B1%A1%E5%B1%9E%E6%80%A7%E5%8F%AA%E8%AF%BB%EF%BC%88%E9%80%92%E5%BD%92%EF%BC%89-d9901a" alt="9・对象属性只读（递归）"/></a> <a href="./questions/17973-medium-deepmutable/README.zh-CN.md" target="_blank"><img src="https://img.shields.io/badge/-17973%E3%83%BBDeepMutable-d9901a" alt="17973・DeepMutable"/></a> <a href="./questions/00553-hard-deep-object-to-unique/README.md" target="_blank"><img src="https://img.shields.io/badge/-553%E3%83%BBDeep%20object%20to%20unique-de3d37" alt="553・Deep object to unique"/></a> <a href="./questions/00956-hard-deeppick/README.md" target="_blank"><img src="https://img.shields.io/badge/-956%E3%83%BBDeepPick-de3d37" alt="956・DeepPick"/></a> </td></tr><tr><td><img src="https://img.shields.io/badge/-%23filter-999" alt="#filter"/></td><td><a href="./questions/18220-medium-filter/README.md" target="_blank"><img src="https://img.shields.io/badge/-18220%E3%83%BBFilter-d9901a" alt="18220・Filter"/></a> </td></tr><tr><td><img src="https://img.shields.io/badge/-%23function-999" alt="#function"/></td><td><a href="./questions/32427-hard-unbox/README.md" target="_blank"><img src="https://img.shields.io/badge/-32427%E3%83%BBUnbox-de3d37" alt="32427・Unbox"/></a> </td></tr><tr><td><img src="https://img.shields.io/badge/-%23game-999" alt="#game"/></td><td><a href="./questions/31797-hard-sudoku/README.md" target="_blank"><img src="https://img.shields.io/badge/-31797%E3%83%BBSudoku-de3d37" alt="31797・Sudoku"/></a> <a href="./questions/35314-hard-valid-sudoku/README.md" target="_blank"><img src="https://img.shields.io/badge/-35314%E3%83%BBValid%20Sudoku-de3d37" alt="35314・Valid Sudoku"/></a> </td></tr><tr><td><img src="https://img.shields.io/badge/-%23infer-999" alt="#infer"/></td><td><a href="./questions/03312-easy-parameters/README.zh-CN.md" target="_blank"><img src="https://img.shields.io/badge/-3312%E3%83%BBParameters-7aad0c" alt="3312・Parameters"/></a> <a href="./questions/00002-medium-return-type/README.zh-CN.md" target="_blank"><img src="https://img.shields.io/badge/-2%E3%83%BB%E8%8E%B7%E5%8F%96%E5%87%BD%E6%95%B0%E8%BF%94%E5%9B%9E%E7%B1%BB%E5%9E%8B-d9901a" alt="2・获取函数返回类型"/></a> <a href="./questions/00010-medium-tuple-to-union/README.zh-CN.md" target="_blank"><img src="https://img.shields.io/badge/-10%E3%83%BB%E5%85%83%E7%BB%84%E8%BD%AC%E5%90%88%E9%9B%86-d9901a" alt="10・元组转合集"/></a> <a href="./questions/02070-medium-drop-char/README.zh-CN.md" target="_blank"><img src="https://img.shields.io/badge/-2070%E3%83%BBDrop%20Char-d9901a" alt="2070・Drop Char"/></a> <a href="./questions/04260-medium-nomiwase/README.md" target="_blank"><img src="https://img.shields.io/badge/-4260%E3%83%BBAllCombinations-d9901a" alt="4260・AllCombinations"/></a> <a href="./questions/09616-medium-parse-url-params/README.md" target="_blank"><img src="https://img.shields.io/badge/-9616%E3%83%BBParse%20URL%20Params-d9901a" alt="9616・Parse URL Params"/></a> <a href="./questions/00055-hard-union-to-intersection/README.zh-CN.md" target="_blank"><img src="https://img.shields.io/badge/-55%E3%83%BB%E8%81%94%E5%90%88%E7%B1%BB%E5%9E%8B%E8%BD%AC%E5%8C%96%E4%B8%BA%E4%BA%A4%E5%8F%89%E7%B1%BB%E5%9E%8B-de3d37" alt="55・联合类型转化为交叉类型"/></a> <a href="./questions/00057-hard-get-required/README.zh-CN.md" target="_blank"><img src="https://img.shields.io/badge/-57%E3%83%BB%E8%8E%B7%E5%BE%97%E5%BF%85%E9%9C%80%E7%9A%84%E5%B1%9E%E6%80%A7-de3d37" alt="57・获得必需的属性"/></a> <a href="./questions/00059-hard-get-optional/README.zh-CN.md" target="_blank"><img src="https://img.shields.io/badge/-59%E3%83%BB%E8%8E%B7%E5%BE%97%E5%8F%AF%E9%80%89%E5%B1%9E%E6%80%A7-de3d37" alt="59・获得可选属性"/></a> <a href="./questions/00399-hard-tuple-filter/README.md" target="_blank"><img src="https://img.shields.io/badge/-399%E3%83%BBTuple%20Filter-de3d37" alt="399・Tuple Filter"/></a> <a href="./questions/00730-hard-union-to-tuple/README.md" target="_blank"><img src="https://img.shields.io/badge/-730%E3%83%BBUnion%20to%20Tuple-de3d37" alt="730・Union to Tuple"/></a> <a href="./questions/02059-hard-drop-string/README.md" target="_blank"><img src="https://img.shields.io/badge/-2059%E3%83%BBDrop%20String-de3d37" alt="2059・Drop String"/></a> <a href="./questions/14080-hard-fizzbuzz/README.md" target="_blank"><img src="https://img.shields.io/badge/-14080%E3%83%BBFizzBuzz-de3d37" alt="14080・FizzBuzz"/></a> <a href="./questions/00734-extreme-inclusive-range/README.md" target="_blank"><img src="https://img.shields.io/badge/-734%E3%83%BBInclusive%20Range-b11b8d" alt="734・Inclusive Range"/></a> <a href="./questions/00741-extreme-sort/README.md" target="_blank"><img src="https://img.shields.io/badge/-741%E3%83%BBSort-b11b8d" alt="741・Sort"/></a> </td></tr><tr><td><img src="https://img.shields.io/badge/-%23intersection-999" alt="#intersection"/></td><td><a href="./questions/31997-extreme-parameter-intersection/README.md" target="_blank"><img src="https://img.shields.io/badge/-31997%E3%83%BBParameter%20Intersection-b11b8d" alt="31997・Parameter Intersection"/></a> </td></tr><tr><td><img src="https://img.shields.io/badge/-%23map-999" alt="#map"/></td><td><a href="./questions/00062-medium-type-lookup/README.zh-CN.md" target="_blank"><img src="https://img.shields.io/badge/-62%E3%83%BB%E6%9F%A5%E6%89%BE%E7%B1%BB%E5%9E%8B-d9901a" alt="62・查找类型"/></a> <a href="./questions/05821-medium-maptypes/README.md" target="_blank"><img src="https://img.shields.io/badge/-5821%E3%83%BBMapTypes-d9901a" alt="5821・MapTypes"/></a> </td></tr><tr><td><img src="https://img.shields.io/badge/-%23math-999" alt="#math"/></td><td><a href="./questions/00529-medium-absolute/README.zh-CN.md" target="_blank"><img src="https://img.shields.io/badge/-529%E3%83%BBAbsolute-d9901a" alt="529・Absolute"/></a> <a href="./questions/02257-medium-minusone/README.zh-CN.md" target="_blank"><img src="https://img.shields.io/badge/-2257%E3%83%BBMinusOne-d9901a" alt="2257・MinusOne"/></a> <a href="./questions/25270-medium-transpose/README.md" target="_blank"><img src="https://img.shields.io/badge/-25270%E3%83%BBTranspose-d9901a" alt="25270・Transpose"/></a> <a href="./questions/27133-medium-square/README.md" target="_blank"><img src="https://img.shields.io/badge/-27133%E3%83%BBSquare-d9901a" alt="27133・Square"/></a> <a href="./questions/27152-medium-triangular-number/README.md" target="_blank"><img src="https://img.shields.io/badge/-27152%E3%83%BBTriangular%20number-d9901a" alt="27152・Triangular number"/></a> <a href="./questions/30958-medium-pascals-triangle/README.md" target="_blank"><img src="https://img.shields.io/badge/-30958%E3%83%BBPascal's%20triangle-d9901a" alt="30958・Pascal's triangle"/></a> <a href="./questions/06141-hard-binary-to-decimal/README.md" target="_blank"><img src="https://img.shields.io/badge/-6141%E3%83%BBBinary%20to%20Decimal-de3d37" alt="6141・Binary to Decimal"/></a> <a href="./questions/08804-hard-two-sum/README.zh-CN.md" target="_blank"><img src="https://img.shields.io/badge/-8804%E3%83%BB%E4%B8%A4%E6%95%B0%E4%B9%8B%E5%92%8C-de3d37" alt="8804・两数之和"/></a> <a href="./questions/14080-hard-fizzbuzz/README.md" target="_blank"><img src="https://img.shields.io/badge/-14080%E3%83%BBFizzBuzz-de3d37" alt="14080・FizzBuzz"/></a> <a href="./questions/35314-hard-valid-sudoku/README.md" target="_blank"><img src="https://img.shields.io/badge/-35314%E3%83%BBValid%20Sudoku-de3d37" alt="35314・Valid Sudoku"/></a> <a href="./questions/00274-extreme-integers-comparator/README.md" target="_blank"><img src="https://img.shields.io/badge/-274%E3%83%BBIntegers%20Comparator-b11b8d" alt="274・Integers Comparator"/></a> <a href="./questions/00476-extreme-sum/README.md" target="_blank"><img src="https://img.shields.io/badge/-476%E3%83%BBSum-b11b8d" alt="476・Sum"/></a> <a href="./questions/00517-extreme-multiply/README.md" target="_blank"><img src="https://img.shields.io/badge/-517%E3%83%BBMultiply-b11b8d" alt="517・Multiply"/></a> </td></tr><tr><td><img src="https://img.shields.io/badge/-%23number-999" alt="#number"/></td><td><a href="./questions/25747-hard-isnegativenumber/README.md" target="_blank"><img src="https://img.shields.io/badge/-25747%E3%83%BBIsNegativeNumber-de3d37" alt="25747・IsNegativeNumber"/></a> </td></tr><tr><td><img src="https://img.shields.io/badge/-%23object-999" alt="#object"/></td><td><a href="./questions/00599-medium-merge/README.zh-CN.md" target="_blank"><img src="https://img.shields.io/badge/-599%E3%83%BBMerge-d9901a" alt="599・Merge"/></a> <a href="./questions/00645-medium-diff/README.zh-CN.md" target="_blank"><img src="https://img.shields.io/badge/-645%E3%83%BBDiff-d9901a" alt="645・Diff"/></a> <a href="./questions/02595-medium-pickbytype/README.md" target="_blank"><img src="https://img.shields.io/badge/-2595%E3%83%BBPickByType-d9901a" alt="2595・PickByType"/></a> <a href="./questions/02757-medium-partialbykeys/README.zh-CN.md" target="_blank"><img src="https://img.shields.io/badge/-2757%E3%83%BBPartialByKeys-d9901a" alt="2757・PartialByKeys"/></a> <a href="./questions/02759-medium-requiredbykeys/README.zh-CN.md" target="_blank"><img src="https://img.shields.io/badge/-2759%E3%83%BBRequiredByKeys-d9901a" alt="2759・RequiredByKeys"/></a> <a href="./questions/02852-medium-omitbytype/README.md" target="_blank"><img src="https://img.shields.io/badge/-2852%E3%83%BBOmitByType-d9901a" alt="2852・OmitByType"/></a> <a href="./questions/02946-medium-objectentries/README.md" target="_blank"><img src="https://img.shields.io/badge/-2946%E3%83%BBObjectEntries-d9901a" alt="2946・ObjectEntries"/></a> <a href="./questions/03188-medium-tuple-to-nested-object/README.md" target="_blank"><img src="https://img.shields.io/badge/-3188%E3%83%BBTuple%20to%20Nested%20Object-d9901a" alt="3188・Tuple to Nested Object"/></a> <a href="./questions/03376-medium-inordertraversal/README.md" target="_blank"><img src="https://img.shields.io/badge/-3376%E3%83%BBInorderTraversal-d9901a" alt="3376・InorderTraversal"/></a> <a href="./questions/04179-medium-flip/README.md" target="_blank"><img src="https://img.shields.io/badge/-4179%E3%83%BBFlip-d9901a" alt="4179・Flip"/></a> <a href="./questions/05821-medium-maptypes/README.md" target="_blank"><img src="https://img.shields.io/badge/-5821%E3%83%BBMapTypes-d9901a" alt="5821・MapTypes"/></a> <a href="./questions/27932-medium-mergeall/README.md" target="_blank"><img src="https://img.shields.io/badge/-27932%E3%83%BBMergeAll-d9901a" alt="27932・MergeAll"/></a> <a href="./questions/29650-medium-extracttoobject/README.md" target="_blank"><img src="https://img.shields.io/badge/-29650%E3%83%BBExtractToObject-d9901a" alt="29650・ExtractToObject"/></a> <a href="./questions/02949-hard-objectfromentries/README.md" target="_blank"><img src="https://img.shields.io/badge/-2949%E3%83%BBObjectFromEntries-de3d37" alt="2949・ObjectFromEntries"/></a> <a href="./questions/09160-hard-assign/README.md" target="_blank"><img src="https://img.shields.io/badge/-9160%E3%83%BBAssign-de3d37" alt="9160・Assign"/></a> <a href="./questions/09775-hard-capitalize-nest-object-keys/README.md" target="_blank"><img src="https://img.shields.io/badge/-9775%E3%83%BBCapitalize%20Nest%20Object%20Keys-de3d37" alt="9775・Capitalize Nest Object Keys"/></a> </td></tr><tr><td><img src="https://img.shields.io/badge/-%23object--keys-999" alt="#object-keys"/></td><td><a href="./questions/00007-easy-readonly/README.zh-CN.md" target="_blank"><img src="https://img.shields.io/badge/-7%E3%83%BB%E5%AF%B9%E8%B1%A1%E5%B1%9E%E6%80%A7%E5%8F%AA%E8%AF%BB-7aad0c" alt="7・对象属性只读"/></a> <a href="./questions/00011-easy-tuple-to-object/README.zh-CN.md" target="_blank"><img src="https://img.shields.io/badge/-11%E3%83%BB%E5%85%83%E7%BB%84%E8%BD%AC%E6%8D%A2%E4%B8%BA%E5%AF%B9%E8%B1%A1-7aad0c" alt="11・元组转换为对象"/></a> <a href="./questions/00008-medium-readonly-2/README.zh-CN.md" target="_blank"><img src="https://img.shields.io/badge/-8%E3%83%BB%E5%AF%B9%E8%B1%A1%E9%83%A8%E5%88%86%E5%B1%9E%E6%80%A7%E5%8F%AA%E8%AF%BB-d9901a" alt="8・对象部分属性只读"/></a> <a href="./questions/00009-medium-deep-readonly/README.zh-CN.md" target="_blank"><img src="https://img.shields.io/badge/-9%E3%83%BB%E5%AF%B9%E8%B1%A1%E5%B1%9E%E6%80%A7%E5%8F%AA%E8%AF%BB%EF%BC%88%E9%80%92%E5%BD%92%EF%BC%89-d9901a" alt="9・对象属性只读（递归）"/></a> <a href="./questions/00527-medium-append-to-object/README.zh-CN.md" target="_blank"><img src="https://img.shields.io/badge/-527%E3%83%BBAppend%20to%20object-d9901a" alt="527・Append to object"/></a> <a href="./questions/01130-medium-replacekeys/README.md" target="_blank"><img src="https://img.shields.io/badge/-1130%E3%83%BBReplaceKeys-d9901a" alt="1130・ReplaceKeys"/></a> <a href="./questions/01367-medium-remove-index-signature/README.md" target="_blank"><img src="https://img.shields.io/badge/-1367%E3%83%BBRemove%20Index%20Signature-d9901a" alt="1367・Remove Index Signature"/></a> <a href="./questions/02793-medium-mutable/README.zh-CN.md" target="_blank"><img src="https://img.shields.io/badge/-2793%E3%83%BBMutable-d9901a" alt="2793・Mutable"/></a> <a href="./questions/28333-medium-public-type/README.md" target="_blank"><img src="https://img.shields.io/badge/-28333%E3%83%BBPublic%20Type-d9901a" alt="28333・Public Type"/></a> <a href="./questions/07258-hard-object-key-paths/README.md" target="_blank"><img src="https://img.shields.io/badge/-7258%E3%83%BBObject%20Key%20Paths-de3d37" alt="7258・Object Key Paths"/></a> <a href="./questions/00005-extreme-readonly-keys/README.zh-CN.md" target="_blank"><img src="https://img.shields.io/badge/-5%E3%83%BB%E8%8E%B7%E5%8F%96%E5%8F%AA%E8%AF%BB%E5%B1%9E%E6%80%A7-b11b8d" alt="5・获取只读属性"/></a> </td></tr><tr><td><img src="https://img.shields.io/badge/-%23omit%20object--keys%20deep-999" alt="#omit object-keys deep"/></td><td><a href="./questions/29785-medium-deep-omit/README.md" target="_blank"><img src="https://img.shields.io/badge/-29785%E3%83%BBDeep%20Omit-d9901a" alt="29785・Deep Omit"/></a> </td></tr><tr><td><img src="https://img.shields.io/badge/-%23optional-999" alt="#optional"/></td><td><a href="./questions/31997-extreme-parameter-intersection/README.md" target="_blank"><img src="https://img.shields.io/badge/-31997%E3%83%BBParameter%20Intersection-b11b8d" alt="31997・Parameter Intersection"/></a> </td></tr><tr><td><img src="https://img.shields.io/badge/-%23parameters-999" alt="#parameters"/></td><td><a href="./questions/31997-extreme-parameter-intersection/README.md" target="_blank"><img src="https://img.shields.io/badge/-31997%E3%83%BBParameter%20Intersection-b11b8d" alt="31997・Parameter Intersection"/></a> </td></tr><tr><td><img src="https://img.shields.io/badge/-%23promise-999" alt="#promise"/></td><td><a href="./questions/00189-easy-awaited/README.zh-CN.md" target="_blank"><img src="https://img.shields.io/badge/-189%E3%83%BBAwaited-7aad0c" alt="189・Awaited"/></a> <a href="./questions/00020-medium-promise-all/README.zh-CN.md" target="_blank"><img src="https://img.shields.io/badge/-20%E3%83%BBPromise.all-d9901a" alt="20・Promise.all"/></a> <a href="./questions/32427-hard-unbox/README.md" target="_blank"><img src="https://img.shields.io/badge/-32427%E3%83%BBUnbox-de3d37" alt="32427・Unbox"/></a> </td></tr><tr><td><img src="https://img.shields.io/badge/-%23readonly-999" alt="#readonly"/></td><td><a href="./questions/00007-easy-readonly/README.zh-CN.md" target="_blank"><img src="https://img.shields.io/badge/-7%E3%83%BB%E5%AF%B9%E8%B1%A1%E5%B1%9E%E6%80%A7%E5%8F%AA%E8%AF%BB-7aad0c" alt="7・对象属性只读"/></a> <a href="./questions/00008-medium-readonly-2/README.zh-CN.md" target="_blank"><img src="https://img.shields.io/badge/-8%E3%83%BB%E5%AF%B9%E8%B1%A1%E9%83%A8%E5%88%86%E5%B1%9E%E6%80%A7%E5%8F%AA%E8%AF%BB-d9901a" alt="8・对象部分属性只读"/></a> <a href="./questions/00009-medium-deep-readonly/README.zh-CN.md" target="_blank"><img src="https://img.shields.io/badge/-9%E3%83%BB%E5%AF%B9%E8%B1%A1%E5%B1%9E%E6%80%A7%E5%8F%AA%E8%AF%BB%EF%BC%88%E9%80%92%E5%BD%92%EF%BC%89-d9901a" alt="9・对象属性只读（递归）"/></a> <a href="./questions/02793-medium-mutable/README.zh-CN.md" target="_blank"><img src="https://img.shields.io/badge/-2793%E3%83%BBMutable-d9901a" alt="2793・Mutable"/></a> <a href="./questions/17973-medium-deepmutable/README.zh-CN.md" target="_blank"><img src="https://img.shields.io/badge/-17973%E3%83%BBDeepMutable-d9901a" alt="17973・DeepMutable"/></a> </td></tr><tr><td><img src="https://img.shields.io/badge/-%23recursion-999" alt="#recursion"/></td><td><a href="./questions/21220-medium-permutations-of-tuple/README.md" target="_blank"><img src="https://img.shields.io/badge/-21220%E3%83%BBPermutations%20of%20Tuple-d9901a" alt="21220・Permutations of Tuple"/></a> <a href="./questions/34007-medium-compare-array-length/README.md" target="_blank"><img src="https://img.shields.io/badge/-34007%E3%83%BBCompare%20Array%20Length-d9901a" alt="34007・Compare Array Length"/></a> <a href="./questions/01383-hard-camelize/README.zh-CN.md" target="_blank"><img src="https://img.shields.io/badge/-1383%E3%83%BBCamelize-de3d37" alt="1383・Camelize"/></a> <a href="./questions/32532-hard-binary-addition/README.md" target="_blank"><img src="https://img.shields.io/badge/-32532%E3%83%BBBinary%20Addition-de3d37" alt="32532・Binary Addition"/></a> </td></tr><tr><td><img src="https://img.shields.io/badge/-%23rest-999" alt="#rest"/></td><td><a href="./questions/31997-extreme-parameter-intersection/README.md" target="_blank"><img src="https://img.shields.io/badge/-31997%E3%83%BBParameter%20Intersection-b11b8d" alt="31997・Parameter Intersection"/></a> </td></tr><tr><td><img src="https://img.shields.io/badge/-%23split-999" alt="#split"/></td><td><a href="./questions/02822-hard-split/README.md" target="_blank"><img src="https://img.shields.io/badge/-2822%E3%83%BBSplit-de3d37" alt="2822・Split"/></a> </td></tr><tr><td><img src="https://img.shields.io/badge/-%23string-999" alt="#string"/></td><td><a href="./questions/00531-medium-string-to-union/README.zh-CN.md" target="_blank"><img src="https://img.shields.io/badge/-531%E3%83%BBString%20to%20Union-d9901a" alt="531・String to Union"/></a> <a href="./questions/08767-medium-combination/README.md" target="_blank"><img src="https://img.shields.io/badge/-8767%E3%83%BBCombination-d9901a" alt="8767・Combination"/></a> <a href="./questions/09142-medium-checkrepeatedchars/README.zh-CN.md" target="_blank"><img src="https://img.shields.io/badge/-9142%E3%83%BBCheckRepeatedChars-d9901a" alt="9142・CheckRepeatedChars"/></a> <a href="./questions/09286-medium-firstuniquecharindex/README.md" target="_blank"><img src="https://img.shields.io/badge/-9286%E3%83%BBFirstUniqueCharIndex-d9901a" alt="9286・FirstUniqueCharIndex"/></a> <a href="./questions/09616-medium-parse-url-params/README.md" target="_blank"><img src="https://img.shields.io/badge/-9616%E3%83%BBParse%20URL%20Params-d9901a" alt="9616・Parse URL Params"/></a> <a href="./questions/21104-medium-findall/README.md" target="_blank"><img src="https://img.shields.io/badge/-21104%E3%83%BBFindAll-d9901a" alt="21104・FindAll"/></a> <a href="./questions/30301-medium-isodd/README.md" target="_blank"><img src="https://img.shields.io/badge/-30301%E3%83%BBIsOdd-d9901a" alt="30301・IsOdd"/></a> <a href="./questions/02822-hard-split/README.md" target="_blank"><img src="https://img.shields.io/badge/-2822%E3%83%BBSplit-de3d37" alt="2822・Split"/></a> <a href="./questions/04037-hard-ispalindrome/README.md" target="_blank"><img src="https://img.shields.io/badge/-4037%E3%83%BBIsPalindrome-de3d37" alt="4037・IsPalindrome"/></a> <a href="./questions/19458-hard-snakecase/README.md" target="_blank"><img src="https://img.shields.io/badge/-19458%E3%83%BBSnakeCase-de3d37" alt="19458・SnakeCase"/></a> </td></tr><tr><td><img src="https://img.shields.io/badge/-%23template--literal-999" alt="#template-literal"/></td><td><a href="./questions/00106-medium-trimleft/README.zh-CN.md" target="_blank"><img src="https://img.shields.io/badge/-106%E3%83%BB%E5%8E%BB%E9%99%A4%E5%B7%A6%E4%BE%A7%E7%A9%BA%E7%99%BD-d9901a" alt="106・去除左侧空白"/></a> <a href="./questions/00108-medium-trim/README.zh-CN.md" target="_blank"><img src="https://img.shields.io/badge/-108%E3%83%BB%E5%8E%BB%E9%99%A4%E4%B8%A4%E7%AB%AF%E7%A9%BA%E7%99%BD%E5%AD%97%E7%AC%A6-d9901a" alt="108・去除两端空白字符"/></a> <a href="./questions/00110-medium-capitalize/README.zh-CN.md" target="_blank"><img src="https://img.shields.io/badge/-110%E3%83%BBCapitalize-d9901a" alt="110・Capitalize"/></a> <a href="./questions/00116-medium-replace/README.zh-CN.md" target="_blank"><img src="https://img.shields.io/badge/-116%E3%83%BBReplace-d9901a" alt="116・Replace"/></a> <a href="./questions/00119-medium-replaceall/README.zh-CN.md" target="_blank"><img src="https://img.shields.io/badge/-119%E3%83%BBReplaceAll-d9901a" alt="119・ReplaceAll"/></a> <a href="./questions/00298-medium-length-of-string/README.zh-CN.md" target="_blank"><img src="https://img.shields.io/badge/-298%E3%83%BBLength%20of%20String-d9901a" alt="298・Length of String"/></a> <a href="./questions/00529-medium-absolute/README.zh-CN.md" target="_blank"><img src="https://img.shields.io/badge/-529%E3%83%BBAbsolute-d9901a" alt="529・Absolute"/></a> <a href="./questions/00612-medium-kebabcase/README.md" target="_blank"><img src="https://img.shields.io/badge/-612%E3%83%BBKebabCase-d9901a" alt="612・KebabCase"/></a> <a href="./questions/01978-medium-percentage-parser/README.zh-CN.md" target="_blank"><img src="https://img.shields.io/badge/-1978%E3%83%BBPercentage%20Parser-d9901a" alt="1978・Percentage Parser"/></a> <a href="./questions/02070-medium-drop-char/README.zh-CN.md" target="_blank"><img src="https://img.shields.io/badge/-2070%E3%83%BBDrop%20Char-d9901a" alt="2070・Drop Char"/></a> <a href="./questions/02688-medium-startswith/README.zh-CN.md" target="_blank"><img src="https://img.shields.io/badge/-2688%E3%83%BBStartsWith-d9901a" alt="2688・StartsWith"/></a> <a href="./questions/02693-medium-endswith/README.zh-CN.md" target="_blank"><img src="https://img.shields.io/badge/-2693%E3%83%BBEndsWith-d9901a" alt="2693・EndsWith"/></a> <a href="./questions/03326-medium-bem-style-string/README.md" target="_blank"><img src="https://img.shields.io/badge/-3326%E3%83%BBBEM%20style%20string-d9901a" alt="3326・BEM style string"/></a> <a href="./questions/04260-medium-nomiwase/README.md" target="_blank"><img src="https://img.shields.io/badge/-4260%E3%83%BBAllCombinations-d9901a" alt="4260・AllCombinations"/></a> <a href="./questions/04803-medium-trim-right/README.zh-CN.md" target="_blank"><img src="https://img.shields.io/badge/-4803%E3%83%BBTrim%20Right-d9901a" alt="4803・Trim Right"/></a> <a href="./questions/05140-medium-trunc/README.md" target="_blank"><img src="https://img.shields.io/badge/-5140%E3%83%BBTrunc-d9901a" alt="5140・Trunc"/></a> <a href="./questions/09616-medium-parse-url-params/README.md" target="_blank"><img src="https://img.shields.io/badge/-9616%E3%83%BBParse%20URL%20Params-d9901a" alt="9616・Parse URL Params"/></a> <a href="./questions/10969-medium-integer/README.zh-CN.md" target="_blank"><img src="https://img.shields.io/badge/-10969%E3%83%BB%E6%95%B4%E6%95%B0-d9901a" alt="10969・整数"/></a> <a href="./questions/21104-medium-findall/README.md" target="_blank"><img src="https://img.shields.io/badge/-21104%E3%83%BBFindAll-d9901a" alt="21104・FindAll"/></a> <a href="./questions/00112-hard-capitalizewords/README.zh-CN.md" target="_blank"><img src="https://img.shields.io/badge/-112%E3%83%BBCapitalize%20Words-de3d37" alt="112・Capitalize Words"/></a> <a href="./questions/00114-hard-camelcase/README.zh-CN.md" target="_blank"><img src="https://img.shields.io/badge/-114%E3%83%BBCamelCase-de3d37" alt="114・CamelCase"/></a> <a href="./questions/00147-hard-c-printf-parser/README.md" target="_blank"><img src="https://img.shields.io/badge/-147%E3%83%BBC--printf%20Parser-de3d37" alt="147・C-printf Parser"/></a> <a href="./questions/00270-hard-typed-get/README.md" target="_blank"><img src="https://img.shields.io/badge/-270%E3%83%BBTyped%20Get-de3d37" alt="270・Typed Get"/></a> <a href="./questions/00300-hard-string-to-number/README.md" target="_blank"><img src="https://img.shields.io/badge/-300%E3%83%BBString%20to%20Number-de3d37" alt="300・String to Number"/></a> <a href="./questions/00472-hard-tuple-to-enum-object/README.zh-CN.md" target="_blank"><img src="https://img.shields.io/badge/-472%E3%83%BBTuple%20to%20Enum%20Object-de3d37" alt="472・Tuple to Enum Object"/></a> <a href="./questions/00545-hard-printf/README.md" target="_blank"><img src="https://img.shields.io/badge/-545%E3%83%BBprintf-de3d37" alt="545・printf"/></a> <a href="./questions/00651-hard-length-of-string-2/README.md" target="_blank"><img src="https://img.shields.io/badge/-651%E3%83%BBLength%20of%20String%202-de3d37" alt="651・Length of String 2"/></a> <a href="./questions/02059-hard-drop-string/README.md" target="_blank"><img src="https://img.shields.io/badge/-2059%E3%83%BBDrop%20String-de3d37" alt="2059・Drop String"/></a> <a href="./questions/19458-hard-snakecase/README.md" target="_blank"><img src="https://img.shields.io/badge/-19458%E3%83%BBSnakeCase-de3d37" alt="19458・SnakeCase"/></a> <a href="./questions/25747-hard-isnegativenumber/README.md" target="_blank"><img src="https://img.shields.io/badge/-25747%E3%83%BBIsNegativeNumber-de3d37" alt="25747・IsNegativeNumber"/></a> <a href="./questions/00151-extreme-query-string-parser/README.md" target="_blank"><img src="https://img.shields.io/badge/-151%E3%83%BBQuery%20String%20Parser-b11b8d" alt="151・Query String Parser"/></a> <a href="./questions/00274-extreme-integers-comparator/README.md" target="_blank"><img src="https://img.shields.io/badge/-274%E3%83%BBIntegers%20Comparator-b11b8d" alt="274・Integers Comparator"/></a> <a href="./questions/00476-extreme-sum/README.md" target="_blank"><img src="https://img.shields.io/badge/-476%E3%83%BBSum-b11b8d" alt="476・Sum"/></a> <a href="./questions/00517-extreme-multiply/README.md" target="_blank"><img src="https://img.shields.io/badge/-517%E3%83%BBMultiply-b11b8d" alt="517・Multiply"/></a> <a href="./questions/06228-extreme-json-parser/README.md" target="_blank"><img src="https://img.shields.io/badge/-6228%E3%83%BBJSON%20Parser-b11b8d" alt="6228・JSON Parser"/></a> </td></tr><tr><td><img src="https://img.shields.io/badge/-%23this-999" alt="#this"/></td><td><a href="./questions/00006-hard-simple-vue/README.zh-CN.md" target="_blank"><img src="https://img.shields.io/badge/-6%E3%83%BB%E7%AE%80%E5%8D%95%E7%9A%84%20Vue%20%E7%B1%BB%E5%9E%8B-de3d37" alt="6・简单的 Vue 类型"/></a> <a href="./questions/01290-hard-pinia/README.md" target="_blank"><img src="https://img.shields.io/badge/-1290%E3%83%BBPinia-de3d37" alt="1290・Pinia"/></a> </td></tr><tr><td><img src="https://img.shields.io/badge/-%23tuple-999" alt="#tuple"/></td><td><a href="./questions/00018-easy-tuple-length/README.zh-CN.md" target="_blank"><img src="https://img.shields.io/badge/-18%E3%83%BB%E8%8E%B7%E5%8F%96%E5%85%83%E7%BB%84%E9%95%BF%E5%BA%A6-7aad0c" alt="18・获取元组长度"/></a> <a href="./questions/03312-easy-parameters/README.zh-CN.md" target="_blank"><img src="https://img.shields.io/badge/-3312%E3%83%BBParameters-7aad0c" alt="3312・Parameters"/></a> <a href="./questions/00010-medium-tuple-to-union/README.zh-CN.md" target="_blank"><img src="https://img.shields.io/badge/-10%E3%83%BB%E5%85%83%E7%BB%84%E8%BD%AC%E5%90%88%E9%9B%86-d9901a" alt="10・元组转合集"/></a> <a href="./questions/03188-medium-tuple-to-nested-object/README.md" target="_blank"><img src="https://img.shields.io/badge/-3188%E3%83%BBTuple%20to%20Nested%20Object-d9901a" alt="3188・Tuple to Nested Object"/></a> <a href="./questions/03192-medium-reverse/README.zh-CN.md" target="_blank"><img src="https://img.shields.io/badge/-3192%E3%83%BBReverse-d9901a" alt="3192・Reverse"/></a> <a href="./questions/03326-medium-bem-style-string/README.md" target="_blank"><img src="https://img.shields.io/badge/-3326%E3%83%BBBEM%20style%20string-d9901a" alt="3326・BEM style string"/></a> <a href="./questions/04471-medium-zip/README.md" target="_blank"><img src="https://img.shields.io/badge/-4471%E3%83%BBZip-d9901a" alt="4471・Zip"/></a> <a href="./questions/04484-medium-istuple/README.md" target="_blank"><img src="https://img.shields.io/badge/-4484%E3%83%BBIsTuple-d9901a" alt="4484・IsTuple"/></a> <a href="./questions/04499-medium-chunk/README.md" target="_blank"><img src="https://img.shields.io/badge/-4499%E3%83%BBChunk-d9901a" alt="4499・Chunk"/></a> <a href="./questions/04518-medium-fill/README.md" target="_blank"><img src="https://img.shields.io/badge/-4518%E3%83%BBFill-d9901a" alt="4518・Fill"/></a> <a href="./questions/07544-medium-construct-tuple/README.zh-CN.md" target="_blank"><img src="https://img.shields.io/badge/-7544%E3%83%BBConstruct%20Tuple-d9901a" alt="7544・Construct Tuple"/></a> <a href="./questions/21220-medium-permutations-of-tuple/README.md" target="_blank"><img src="https://img.shields.io/badge/-21220%E3%83%BBPermutations%20of%20Tuple-d9901a" alt="21220・Permutations of Tuple"/></a> <a href="./questions/27133-medium-square/README.md" target="_blank"><img src="https://img.shields.io/badge/-27133%E3%83%BBSquare-d9901a" alt="27133・Square"/></a> <a href="./questions/27152-medium-triangular-number/README.md" target="_blank"><img src="https://img.shields.io/badge/-27152%E3%83%BBTriangular%20number-d9901a" alt="27152・Triangular number"/></a> <a href="./questions/00399-hard-tuple-filter/README.md" target="_blank"><img src="https://img.shields.io/badge/-399%E3%83%BBTuple%20Filter-de3d37" alt="399・Tuple Filter"/></a> <a href="./questions/00472-hard-tuple-to-enum-object/README.zh-CN.md" target="_blank"><img src="https://img.shields.io/badge/-472%E3%83%BBTuple%20to%20Enum%20Object-de3d37" alt="472・Tuple to Enum Object"/></a> <a href="./questions/00730-hard-union-to-tuple/README.md" target="_blank"><img src="https://img.shields.io/badge/-730%E3%83%BBUnion%20to%20Tuple-de3d37" alt="730・Union to Tuple"/></a> <a href="./questions/02822-hard-split/README.md" target="_blank"><img src="https://img.shields.io/badge/-2822%E3%83%BBSplit-de3d37" alt="2822・Split"/></a> <a href="./questions/30178-hard-unique-items/README.md" target="_blank"><img src="https://img.shields.io/badge/-30178%E3%83%BBUnique%20Items-de3d37" alt="30178・Unique Items"/></a> <a href="./questions/31797-hard-sudoku/README.md" target="_blank"><img src="https://img.shields.io/badge/-31797%E3%83%BBSudoku-de3d37" alt="31797・Sudoku"/></a> <a href="./questions/32427-hard-unbox/README.md" target="_blank"><img src="https://img.shields.io/badge/-32427%E3%83%BBUnbox-de3d37" alt="32427・Unbox"/></a> <a href="./questions/07561-extreme-subtract/README.md" target="_blank"><img src="https://img.shields.io/badge/-7561%E3%83%BBSubtract-b11b8d" alt="7561・Subtract"/></a> </td></tr><tr><td><img src="https://img.shields.io/badge/-%23union-999" alt="#union"/></td><td><a href="./questions/00004-easy-pick/README.zh-CN.md" target="_blank"><img src="https://img.shields.io/badge/-4%E3%83%BB%E5%AE%9E%E7%8E%B0%20Pick-7aad0c" alt="4・实现 Pick"/></a> <a href="./questions/00043-easy-exclude/README.zh-CN.md" target="_blank"><img src="https://img.shields.io/badge/-43%E3%83%BB%E5%AE%9E%E7%8E%B0%20Exclude-7aad0c" alt="43・实现 Exclude"/></a> <a href="./questions/00003-medium-omit/README.zh-CN.md" target="_blank"><img src="https://img.shields.io/badge/-3%E3%83%BB%E5%AE%9E%E7%8E%B0%20Omit-d9901a" alt="3・实现 Omit"/></a> <a href="./questions/00010-medium-tuple-to-union/README.zh-CN.md" target="_blank"><img src="https://img.shields.io/badge/-10%E3%83%BB%E5%85%83%E7%BB%84%E8%BD%AC%E5%90%88%E9%9B%86-d9901a" alt="10・元组转合集"/></a> <a href="./questions/00062-medium-type-lookup/README.zh-CN.md" target="_blank"><img src="https://img.shields.io/badge/-62%E3%83%BB%E6%9F%A5%E6%89%BE%E7%B1%BB%E5%9E%8B-d9901a" alt="62・查找类型"/></a> <a href="./questions/00296-medium-permutation/README.zh-CN.md" target="_blank"><img src="https://img.shields.io/badge/-296%E3%83%BBPermutation-d9901a" alt="296・Permutation"/></a> <a href="./questions/00531-medium-string-to-union/README.zh-CN.md" target="_blank"><img src="https://img.shields.io/badge/-531%E3%83%BBString%20to%20Union-d9901a" alt="531・String to Union"/></a> <a href="./questions/01042-medium-isnever/README.md" target="_blank"><img src="https://img.shields.io/badge/-1042%E3%83%BBIsNever-d9901a" alt="1042・IsNever"/></a> <a href="./questions/01097-medium-isunion/README.md" target="_blank"><img src="https://img.shields.io/badge/-1097%E3%83%BBIsUnion-d9901a" alt="1097・IsUnion"/></a> <a href="./questions/03326-medium-bem-style-string/README.md" target="_blank"><img src="https://img.shields.io/badge/-3326%E3%83%BBBEM%20style%20string-d9901a" alt="3326・BEM style string"/></a> <a href="./questions/04260-medium-nomiwase/README.md" target="_blank"><img src="https://img.shields.io/badge/-4260%E3%83%BBAllCombinations-d9901a" alt="4260・AllCombinations"/></a> <a href="./questions/08987-medium-subsequence/README.md" target="_blank"><img src="https://img.shields.io/badge/-8987%E3%83%BBSubsequence-d9901a" alt="8987・Subsequence"/></a> <a href="./questions/09142-medium-checkrepeatedchars/README.zh-CN.md" target="_blank"><img src="https://img.shields.io/badge/-9142%E3%83%BBCheckRepeatedChars-d9901a" alt="9142・CheckRepeatedChars"/></a> <a href="./questions/21220-medium-permutations-of-tuple/README.md" target="_blank"><img src="https://img.shields.io/badge/-21220%E3%83%BBPermutations%20of%20Tuple-d9901a" alt="21220・Permutations of Tuple"/></a> <a href="./questions/27862-medium-cartesianproduct/README.md" target="_blank"><img src="https://img.shields.io/badge/-27862%E3%83%BBCartesianProduct-d9901a" alt="27862・CartesianProduct"/></a> <a href="./questions/27932-medium-mergeall/README.md" target="_blank"><img src="https://img.shields.io/badge/-27932%E3%83%BBMergeAll-d9901a" alt="27932・MergeAll"/></a> <a href="./questions/00730-hard-union-to-tuple/README.md" target="_blank"><img src="https://img.shields.io/badge/-730%E3%83%BBUnion%20to%20Tuple-de3d37" alt="730・Union to Tuple"/></a> <a href="./questions/01383-hard-camelize/README.zh-CN.md" target="_blank"><img src="https://img.shields.io/badge/-1383%E3%83%BBCamelize-de3d37" alt="1383・Camelize"/></a> <a href="./questions/05423-hard-intersection/README.md" target="_blank"><img src="https://img.shields.io/badge/-5423%E3%83%BBIntersection-de3d37" alt="5423・Intersection"/></a> <a href="./questions/31797-hard-sudoku/README.md" target="_blank"><img src="https://img.shields.io/badge/-31797%E3%83%BBSudoku-de3d37" alt="31797・Sudoku"/></a> </td></tr><tr><td><img src="https://img.shields.io/badge/-%23utils-999" alt="#utils"/></td><td><a href="./questions/00268-easy-if/README.zh-CN.md" target="_blank"><img src="https://img.shields.io/badge/-268%E3%83%BBIf-7aad0c" alt="268・If"/></a> <a href="./questions/01042-medium-isnever/README.md" target="_blank"><img src="https://img.shields.io/badge/-1042%E3%83%BBIsNever-d9901a" alt="1042・IsNever"/></a> <a href="./questions/05821-medium-maptypes/README.md" target="_blank"><img src="https://img.shields.io/badge/-5821%E3%83%BBMapTypes-d9901a" alt="5821・MapTypes"/></a> <a href="./questions/19749-medium-isequal/README.md" target="_blank"><img src="https://img.shields.io/badge/-19749%E3%83%BBIsEqual-d9901a" alt="19749・IsEqual"/></a> <a href="./questions/00055-hard-union-to-intersection/README.zh-CN.md" target="_blank"><img src="https://img.shields.io/badge/-55%E3%83%BB%E8%81%94%E5%90%88%E7%B1%BB%E5%9E%8B%E8%BD%AC%E5%8C%96%E4%B8%BA%E4%BA%A4%E5%8F%89%E7%B1%BB%E5%9E%8B-de3d37" alt="55・联合类型转化为交叉类型"/></a> <a href="./questions/00057-hard-get-required/README.zh-CN.md" target="_blank"><img src="https://img.shields.io/badge/-57%E3%83%BB%E8%8E%B7%E5%BE%97%E5%BF%85%E9%9C%80%E7%9A%84%E5%B1%9E%E6%80%A7-de3d37" alt="57・获得必需的属性"/></a> <a href="./questions/00059-hard-get-optional/README.zh-CN.md" target="_blank"><img src="https://img.shields.io/badge/-59%E3%83%BB%E8%8E%B7%E5%BE%97%E5%8F%AF%E9%80%89%E5%B1%9E%E6%80%A7-de3d37" alt="59・获得可选属性"/></a> <a href="./questions/00089-hard-required-keys/README.zh-CN.md" target="_blank"><img src="https://img.shields.io/badge/-89%E3%83%BB%E5%BF%85%E9%9C%80%E7%9A%84%E9%94%AE-de3d37" alt="89・必需的键"/></a> <a href="./questions/00090-hard-optional-keys/README.zh-CN.md" target="_blank"><img src="https://img.shields.io/badge/-90%E3%83%BB%E5%8F%AF%E9%80%89%E7%B1%BB%E5%9E%8B%E7%9A%84%E9%94%AE-de3d37" alt="90・可选类型的键"/></a> <a href="./questions/00223-hard-isany/README.md" target="_blank"><img src="https://img.shields.io/badge/-223%E3%83%BBIsAny-de3d37" alt="223・IsAny"/></a> <a href="./questions/00270-hard-typed-get/README.md" target="_blank"><img src="https://img.shields.io/badge/-270%E3%83%BBTyped%20Get-de3d37" alt="270・Typed Get"/></a> <a href="./questions/02828-hard-classpublickeys/README.md" target="_blank"><img src="https://img.shields.io/badge/-2828%E3%83%BBClassPublicKeys-de3d37" alt="2828・ClassPublicKeys"/></a> <a href="./questions/02857-hard-isrequiredkey/README.md" target="_blank"><img src="https://img.shields.io/badge/-2857%E3%83%BBIsRequiredKey-de3d37" alt="2857・IsRequiredKey"/></a> <a href="./questions/05181-hard-mutable-keys/README.md" target="_blank"><img src="https://img.shields.io/badge/-5181%E3%83%BBMutable%20Keys-de3d37" alt="5181・Mutable Keys"/></a> <a href="./questions/32427-hard-unbox/README.md" target="_blank"><img src="https://img.shields.io/badge/-32427%E3%83%BBUnbox-de3d37" alt="32427・Unbox"/></a> <a href="./questions/00005-extreme-readonly-keys/README.zh-CN.md" target="_blank"><img src="https://img.shields.io/badge/-5%E3%83%BB%E8%8E%B7%E5%8F%96%E5%8F%AA%E8%AF%BB%E5%B1%9E%E6%80%A7-b11b8d" alt="5・获取只读属性"/></a> </td></tr><tr><td><img src="https://img.shields.io/badge/-%23variadic-999" alt="#variadic"/></td><td><a href="./questions/31997-extreme-parameter-intersection/README.md" target="_blank"><img src="https://img.shields.io/badge/-31997%E3%83%BBParameter%20Intersection-b11b8d" alt="31997・Parameter Intersection"/></a> </td></tr><tr><td><img src="https://img.shields.io/badge/-%23vue-999" alt="#vue"/></td><td><a href="./questions/00006-hard-simple-vue/README.zh-CN.md" target="_blank"><img src="https://img.shields.io/badge/-6%E3%83%BB%E7%AE%80%E5%8D%95%E7%9A%84%20Vue%20%E7%B1%BB%E5%9E%8B-de3d37" alt="6・简单的 Vue 类型"/></a> <a href="./questions/00213-hard-vue-basic-props/README.md" target="_blank"><img src="https://img.shields.io/badge/-213%E3%83%BBVue%20Basic%20Props-de3d37" alt="213・Vue Basic Props"/></a> <a href="./questions/01290-hard-pinia/README.md" target="_blank"><img src="https://img.shields.io/badge/-1290%E3%83%BBPinia-de3d37" alt="1290・Pinia"/></a> </td></tr><tr><td><img src="https://img.shields.io/badge/-%23%E6%95%B0%E7%BB%84-999" alt="#数组"/></td><td><a href="./questions/05117-medium-without/README.zh-CN.md" target="_blank"><img src="https://img.shields.io/badge/-5117%E3%83%BB%E5%8E%BB%E9%99%A4%E6%95%B0%E7%BB%84%E6%8C%87%E5%AE%9A%E5%85%83%E7%B4%A0-d9901a" alt="5117・去除数组指定元素"/></a> </td></tr><tr><td><img src="https://img.shields.io/badge/-%23%E8%81%94%E5%90%88%E7%B1%BB%E5%9E%8B-999" alt="#联合类型"/></td><td><a href="./questions/05117-medium-without/README.zh-CN.md" target="_blank"><img src="https://img.shields.io/badge/-5117%E3%83%BB%E5%8E%BB%E9%99%A4%E6%95%B0%E7%BB%84%E6%8C%87%E5%AE%9A%E5%85%83%E7%B4%A0-d9901a" alt="5117・去除数组指定元素"/></a> </td></tr><tr><td><code>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</code></td><td></td></tr></tbody></table></details><br><details><summary>通过纯文本</summary><br><h3>热身 (1)</h3><ul><li><a href="./questions/00013-warm-hello-world/README.zh-CN.md" target="_blank">13・Hello World</a> </li></ul><h3>简单 (13)</h3><ul><li><a href="./questions/00004-easy-pick/README.zh-CN.md" target="_blank">4・实现 Pick</a> </li><li><a href="./questions/00007-easy-readonly/README.zh-CN.md" target="_blank">7・对象属性只读</a> </li><li><a href="./questions/00011-easy-tuple-to-object/README.zh-CN.md" target="_blank">11・元组转换为对象</a> </li><li><a href="./questions/00014-easy-first/README.zh-CN.md" target="_blank">14・第一个元素</a> </li><li><a href="./questions/00018-easy-tuple-length/README.zh-CN.md" target="_blank">18・获取元组长度</a> </li><li><a href="./questions/00043-easy-exclude/README.zh-CN.md" target="_blank">43・实现 Exclude</a> </li><li><a href="./questions/00189-easy-awaited/README.zh-CN.md" target="_blank">189・Awaited</a> </li><li><a href="./questions/00268-easy-if/README.zh-CN.md" target="_blank">268・If</a> </li><li><a href="./questions/00533-easy-concat/README.zh-CN.md" target="_blank">533・Concat</a> </li><li><a href="./questions/00898-easy-includes/README.zh-CN.md" target="_blank">898・Includes</a> </li><li><a href="./questions/03057-easy-push/README.zh-CN.md" target="_blank">3057・Push</a> </li><li><a href="./questions/03060-easy-unshift/README.zh-CN.md" target="_blank">3060・Unshift</a> </li><li><a href="./questions/03312-easy-parameters/README.zh-CN.md" target="_blank">3312・Parameters</a> </li></ul><h3>中等 (104)</h3><ul><li><a href="./questions/00002-medium-return-type/README.zh-CN.md" target="_blank">2・获取函数返回类型</a> </li><li><a href="./questions/00003-medium-omit/README.zh-CN.md" target="_blank">3・实现 Omit</a> </li><li><a href="./questions/00008-medium-readonly-2/README.zh-CN.md" target="_blank">8・对象部分属性只读</a> </li><li><a href="./questions/00009-medium-deep-readonly/README.zh-CN.md" target="_blank">9・对象属性只读（递归）</a> </li><li><a href="./questions/00010-medium-tuple-to-union/README.zh-CN.md" target="_blank">10・元组转合集</a> </li><li><a href="./questions/00012-medium-chainable-options/README.zh-CN.md" target="_blank">12・可串联构造器</a> </li><li><a href="./questions/00015-medium-last/README.zh-CN.md" target="_blank">15・最后一个元素</a> </li><li><a href="./questions/00016-medium-pop/README.zh-CN.md" target="_blank">16・排除最后一项</a> </li><li><a href="./questions/00020-medium-promise-all/README.zh-CN.md" target="_blank">20・Promise.all</a> </li><li><a href="./questions/00062-medium-type-lookup/README.zh-CN.md" target="_blank">62・查找类型</a> </li><li><a href="./questions/00106-medium-trimleft/README.zh-CN.md" target="_blank">106・去除左侧空白</a> </li><li><a href="./questions/00108-medium-trim/README.zh-CN.md" target="_blank">108・去除两端空白字符</a> </li><li><a href="./questions/00110-medium-capitalize/README.zh-CN.md" target="_blank">110・Capitalize</a> </li><li><a href="./questions/00116-medium-replace/README.zh-CN.md" target="_blank">116・Replace</a> </li><li><a href="./questions/00119-medium-replaceall/README.zh-CN.md" target="_blank">119・ReplaceAll</a> </li><li><a href="./questions/00191-medium-append-argument/README.zh-CN.md" target="_blank">191・追加参数</a> </li><li><a href="./questions/00296-medium-permutation/README.zh-CN.md" target="_blank">296・Permutation</a> </li><li><a href="./questions/00298-medium-length-of-string/README.zh-CN.md" target="_blank">298・Length of String</a> </li><li><a href="./questions/00459-medium-flatten/README.zh-CN.md" target="_blank">459・Flatten</a> </li><li><a href="./questions/00527-medium-append-to-object/README.zh-CN.md" target="_blank">527・Append to object</a> </li><li><a href="./questions/00529-medium-absolute/README.zh-CN.md" target="_blank">529・Absolute</a> </li><li><a href="./questions/00531-medium-string-to-union/README.zh-CN.md" target="_blank">531・String to Union</a> </li><li><a href="./questions/00599-medium-merge/README.zh-CN.md" target="_blank">599・Merge</a> </li><li><a href="./questions/00612-medium-kebabcase/README.md" target="_blank">612・KebabCase</a> </li><li><a href="./questions/00645-medium-diff/README.zh-CN.md" target="_blank">645・Diff</a> </li><li><a href="./questions/00949-medium-anyof/README.zh-CN.md" target="_blank">949・AnyOf</a> </li><li><a href="./questions/01042-medium-isnever/README.md" target="_blank">1042・IsNever</a> </li><li><a href="./questions/01097-medium-isunion/README.md" target="_blank">1097・IsUnion</a> </li><li><a href="./questions/01130-medium-replacekeys/README.md" target="_blank">1130・ReplaceKeys</a> </li><li><a href="./questions/01367-medium-remove-index-signature/README.md" target="_blank">1367・Remove Index Signature</a> </li><li><a href="./questions/01978-medium-percentage-parser/README.zh-CN.md" target="_blank">1978・Percentage Parser</a> </li><li><a href="./questions/02070-medium-drop-char/README.zh-CN.md" target="_blank">2070・Drop Char</a> </li><li><a href="./questions/02257-medium-minusone/README.zh-CN.md" target="_blank">2257・MinusOne</a> </li><li><a href="./questions/02595-medium-pickbytype/README.md" target="_blank">2595・PickByType</a> </li><li><a href="./questions/02688-medium-startswith/README.zh-CN.md" target="_blank">2688・StartsWith</a> </li><li><a href="./questions/02693-medium-endswith/README.zh-CN.md" target="_blank">2693・EndsWith</a> </li><li><a href="./questions/02757-medium-partialbykeys/README.zh-CN.md" target="_blank">2757・PartialByKeys</a> </li><li><a href="./questions/02759-medium-requiredbykeys/README.zh-CN.md" target="_blank">2759・RequiredByKeys</a> </li><li><a href="./questions/02793-medium-mutable/README.zh-CN.md" target="_blank">2793・Mutable</a> </li><li><a href="./questions/02852-medium-omitbytype/README.md" target="_blank">2852・OmitByType</a> </li><li><a href="./questions/02946-medium-objectentries/README.md" target="_blank">2946・ObjectEntries</a> </li><li><a href="./questions/03062-medium-shift/README.md" target="_blank">3062・Shift</a> </li><li><a href="./questions/03188-medium-tuple-to-nested-object/README.md" target="_blank">3188・Tuple to Nested Object</a> </li><li><a href="./questions/03192-medium-reverse/README.zh-CN.md" target="_blank">3192・Reverse</a> </li><li><a href="./questions/03196-medium-flip-arguments/README.md" target="_blank">3196・Flip Arguments</a> </li><li><a href="./questions/03243-medium-flattendepth/README.md" target="_blank">3243・FlattenDepth</a> </li><li><a href="./questions/03326-medium-bem-style-string/README.md" target="_blank">3326・BEM style string</a> </li><li><a href="./questions/03376-medium-inordertraversal/README.md" target="_blank">3376・InorderTraversal</a> </li><li><a href="./questions/04179-medium-flip/README.md" target="_blank">4179・Flip</a> </li><li><a href="./questions/04182-medium-fibonacci-sequence/README.zh-CN.md" target="_blank">4182・斐波那契序列</a> </li><li><a href="./questions/04260-medium-nomiwase/README.md" target="_blank">4260・AllCombinations</a> </li><li><a href="./questions/04425-medium-greater-than/README.md" target="_blank">4425・Greater Than</a> </li><li><a href="./questions/04471-medium-zip/README.md" target="_blank">4471・Zip</a> </li><li><a href="./questions/04484-medium-istuple/README.md" target="_blank">4484・IsTuple</a> </li><li><a href="./questions/04499-medium-chunk/README.md" target="_blank">4499・Chunk</a> </li><li><a href="./questions/04518-medium-fill/README.md" target="_blank">4518・Fill</a> </li><li><a href="./questions/04803-medium-trim-right/README.zh-CN.md" target="_blank">4803・Trim Right</a> </li><li><a href="./questions/05117-medium-without/README.zh-CN.md" target="_blank">5117・去除数组指定元素</a> </li><li><a href="./questions/05140-medium-trunc/README.md" target="_blank">5140・Trunc</a> </li><li><a href="./questions/05153-medium-indexof/README.md" target="_blank">5153・IndexOf</a> </li><li><a href="./questions/05310-medium-join/README.md" target="_blank">5310・Join</a> </li><li><a href="./questions/05317-medium-lastindexof/README.zh-CN.md" target="_blank">5317・LastIndexOf</a> </li><li><a href="./questions/05360-medium-unique/README.zh-CN.md" target="_blank">5360・Unique</a> </li><li><a href="./questions/05821-medium-maptypes/README.md" target="_blank">5821・MapTypes</a> </li><li><a href="./questions/07544-medium-construct-tuple/README.zh-CN.md" target="_blank">7544・Construct Tuple</a> </li><li><a href="./questions/08640-medium-number-range/README.md" target="_blank">8640・Number Range</a> </li><li><a href="./questions/08767-medium-combination/README.md" target="_blank">8767・Combination</a> </li><li><a href="./questions/08987-medium-subsequence/README.md" target="_blank">8987・Subsequence</a> </li><li><a href="./questions/09142-medium-checkrepeatedchars/README.zh-CN.md" target="_blank">9142・CheckRepeatedChars</a> </li><li><a href="./questions/09286-medium-firstuniquecharindex/README.md" target="_blank">9286・FirstUniqueCharIndex</a> </li><li><a href="./questions/09616-medium-parse-url-params/README.md" target="_blank">9616・Parse URL Params</a> </li><li><a href="./questions/09896-medium-get-middle-element/README.zh-CN.md" target="_blank">9896・获取数组的中间元素</a> </li><li><a href="./questions/09898-medium-zhao-chu-mu-biao-shu-zu-zhong-zhi-chu-xian-guo-yi-ci-de-yuan-su/README.zh-CN.md" target="_blank">9898・找出目标数组中只出现过一次的元素</a> </li><li><a href="./questions/09989-medium-tong-ji-shu-zu-zhong-de-yuan-su-ge-shu/README.zh-CN.md" target="_blank">9989・统计数组中的元素个数</a> </li><li><a href="./questions/10969-medium-integer/README.zh-CN.md" target="_blank">10969・整数</a> </li><li><a href="./questions/16259-medium-to-primitive/README.zh-CN.md" target="_blank">16259・将类型为字面类型（标签类型）的属性，转换为基本类型。</a> </li><li><a href="./questions/17973-medium-deepmutable/README.zh-CN.md" target="_blank">17973・DeepMutable</a> </li><li><a href="./questions/18142-medium-all/README.zh-CN.md" target="_blank">18142・All</a> </li><li><a href="./questions/18220-medium-filter/README.md" target="_blank">18220・Filter</a> </li><li><a href="./questions/19749-medium-isequal/README.md" target="_blank">19749・IsEqual</a> </li><li><a href="./questions/21104-medium-findall/README.md" target="_blank">21104・FindAll</a> </li><li><a href="./questions/21106-medium-zu-he-jian-lei-xing-combination-key-type/README.zh-CN.md" target="_blank">21106・组合键类型 Combination key type</a> </li><li><a href="./questions/21220-medium-permutations-of-tuple/README.md" target="_blank">21220・Permutations of Tuple</a> </li><li><a href="./questions/25170-medium-replace-first/README.md" target="_blank">25170・Replace First</a> </li><li><a href="./questions/25270-medium-transpose/README.md" target="_blank">25270・Transpose</a> </li><li><a href="./questions/26401-medium-json-schema-to-typescript/README.md" target="_blank">26401・JSON Schema to TypeScript</a> </li><li><a href="./questions/27133-medium-square/README.md" target="_blank">27133・Square</a> </li><li><a href="./questions/27152-medium-triangular-number/README.md" target="_blank">27152・Triangular number</a> </li><li><a href="./questions/27862-medium-cartesianproduct/README.md" target="_blank">27862・CartesianProduct</a> </li><li><a href="./questions/27932-medium-mergeall/README.md" target="_blank">27932・MergeAll</a> </li><li><a href="./questions/27958-medium-checkrepeatedtuple/README.zh-CN.md" target="_blank">27958・CheckRepeatedTuple</a> </li><li><a href="./questions/28333-medium-public-type/README.md" target="_blank">28333・Public Type</a> </li><li><a href="./questions/29650-medium-extracttoobject/README.md" target="_blank">29650・ExtractToObject</a> </li><li><a href="./questions/29785-medium-deep-omit/README.md" target="_blank">29785・Deep Omit</a> </li><li><a href="./questions/30301-medium-isodd/README.md" target="_blank">30301・IsOdd</a> </li><li><a href="./questions/30430-medium-tower-of-hanoi/README.md" target="_blank">30430・Tower of hanoi</a> </li><li><a href="./questions/30958-medium-pascals-triangle/README.md" target="_blank">30958・Pascal's triangle</a> </li><li><a href="./questions/30970-medium-shitariteraru/README.md" target="_blank">30970・IsFixedStringLiteralType</a> </li><li><a href="./questions/34007-medium-compare-array-length/README.md" target="_blank">34007・Compare Array Length</a> </li><li><a href="./questions/34857-medium-defined-partial-record/README.md" target="_blank">34857・Defined Partial Record</a> </li><li><a href="./questions/35045-medium-longest-common-prefix/README.md" target="_blank">35045・Longest Common Prefix</a> </li><li><a href="./questions/35191-medium-trace/README.md" target="_blank">35191・Trace</a> </li><li><a href="./questions/35252-medium-isalphabet/README.md" target="_blank">35252・IsAlphabet</a> </li><li><a href="./questions/35991-medium-myuppercase/README.md" target="_blank">35991・MyUppercase</a> </li></ul><h3>困难 (55)</h3><ul><li><a href="./questions/00006-hard-simple-vue/README.zh-CN.md" target="_blank">6・简单的 Vue 类型</a> </li><li><a href="./questions/00017-hard-currying-1/README.zh-CN.md" target="_blank">17・柯里化 1</a> </li><li><a href="./questions/00055-hard-union-to-intersection/README.zh-CN.md" target="_blank">55・联合类型转化为交叉类型</a> </li><li><a href="./questions/00057-hard-get-required/README.zh-CN.md" target="_blank">57・获得必需的属性</a> </li><li><a href="./questions/00059-hard-get-optional/README.zh-CN.md" target="_blank">59・获得可选属性</a> </li><li><a href="./questions/00089-hard-required-keys/README.zh-CN.md" target="_blank">89・必需的键</a> </li><li><a href="./questions/00090-hard-optional-keys/README.zh-CN.md" target="_blank">90・可选类型的键</a> </li><li><a href="./questions/00112-hard-capitalizewords/README.zh-CN.md" target="_blank">112・Capitalize Words</a> </li><li><a href="./questions/00114-hard-camelcase/README.zh-CN.md" target="_blank">114・CamelCase</a> </li><li><a href="./questions/00147-hard-c-printf-parser/README.md" target="_blank">147・C-printf Parser</a> </li><li><a href="./questions/00213-hard-vue-basic-props/README.md" target="_blank">213・Vue Basic Props</a> </li><li><a href="./questions/00223-hard-isany/README.md" target="_blank">223・IsAny</a> </li><li><a href="./questions/00270-hard-typed-get/README.md" target="_blank">270・Typed Get</a> </li><li><a href="./questions/00300-hard-string-to-number/README.md" target="_blank">300・String to Number</a> </li><li><a href="./questions/00399-hard-tuple-filter/README.md" target="_blank">399・Tuple Filter</a> </li><li><a href="./questions/00472-hard-tuple-to-enum-object/README.zh-CN.md" target="_blank">472・Tuple to Enum Object</a> </li><li><a href="./questions/00545-hard-printf/README.md" target="_blank">545・printf</a> </li><li><a href="./questions/00553-hard-deep-object-to-unique/README.md" target="_blank">553・Deep object to unique</a> </li><li><a href="./questions/00651-hard-length-of-string-2/README.md" target="_blank">651・Length of String 2</a> </li><li><a href="./questions/00730-hard-union-to-tuple/README.md" target="_blank">730・Union to Tuple</a> </li><li><a href="./questions/00847-hard-string-join/README.md" target="_blank">847・String Join</a> </li><li><a href="./questions/00956-hard-deeppick/README.md" target="_blank">956・DeepPick</a> </li><li><a href="./questions/01290-hard-pinia/README.md" target="_blank">1290・Pinia</a> </li><li><a href="./questions/01383-hard-camelize/README.zh-CN.md" target="_blank">1383・Camelize</a> </li><li><a href="./questions/02059-hard-drop-string/README.md" target="_blank">2059・Drop String</a> </li><li><a href="./questions/02822-hard-split/README.md" target="_blank">2822・Split</a> </li><li><a href="./questions/02828-hard-classpublickeys/README.md" target="_blank">2828・ClassPublicKeys</a> </li><li><a href="./questions/02857-hard-isrequiredkey/README.md" target="_blank">2857・IsRequiredKey</a> </li><li><a href="./questions/02949-hard-objectfromentries/README.md" target="_blank">2949・ObjectFromEntries</a> </li><li><a href="./questions/04037-hard-ispalindrome/README.md" target="_blank">4037・IsPalindrome</a> </li><li><a href="./questions/05181-hard-mutable-keys/README.md" target="_blank">5181・Mutable Keys</a> </li><li><a href="./questions/05423-hard-intersection/README.md" target="_blank">5423・Intersection</a> </li><li><a href="./questions/06141-hard-binary-to-decimal/README.md" target="_blank">6141・Binary to Decimal</a> </li><li><a href="./questions/07258-hard-object-key-paths/README.md" target="_blank">7258・Object Key Paths</a> </li><li><a href="./questions/08804-hard-two-sum/README.zh-CN.md" target="_blank">8804・两数之和</a> </li><li><a href="./questions/09155-hard-validdate/README.md" target="_blank">9155・ValidDate</a> </li><li><a href="./questions/09160-hard-assign/README.md" target="_blank">9160・Assign</a> </li><li><a href="./questions/09384-hard-maximum/README.md" target="_blank">9384・Maximum</a> </li><li><a href="./questions/09775-hard-capitalize-nest-object-keys/README.md" target="_blank">9775・Capitalize Nest Object Keys</a> </li><li><a href="./questions/13580-hard-replace-union/README.md" target="_blank">13580・Replace Union</a> </li><li><a href="./questions/14080-hard-fizzbuzz/README.md" target="_blank">14080・FizzBuzz</a> </li><li><a href="./questions/14188-hard-run-length-encoding/README.md" target="_blank">14188・Run-length encoding</a> </li><li><a href="./questions/15260-hard-tree-path-array/README.md" target="_blank">15260・Tree path array</a> </li><li><a href="./questions/19458-hard-snakecase/README.md" target="_blank">19458・SnakeCase</a> </li><li><a href="./questions/25747-hard-isnegativenumber/README.md" target="_blank">25747・IsNegativeNumber</a> </li><li><a href="./questions/28143-hard-optionalundefined/README.md" target="_blank">28143・OptionalUndefined</a> </li><li><a href="./questions/30178-hard-unique-items/README.md" target="_blank">30178・Unique Items</a> </li><li><a href="./questions/30575-hard-bitwisexor/README.md" target="_blank">30575・BitwiseXOR</a> </li><li><a href="./questions/31797-hard-sudoku/README.md" target="_blank">31797・Sudoku</a> </li><li><a href="./questions/31824-hard-length-of-string-3/README.md" target="_blank">31824・Length of String 3</a> </li><li><a href="./questions/32427-hard-unbox/README.md" target="_blank">32427・Unbox</a> </li><li><a href="./questions/32532-hard-binary-addition/README.md" target="_blank">32532・Binary Addition</a> </li><li><a href="./questions/33763-hard-union-to-object-from-key/README.md" target="_blank">33763・Union to Object from key</a> </li><li><a href="./questions/34286-hard-take-elements/README.md" target="_blank">34286・Take Elements</a> </li><li><a href="./questions/35314-hard-valid-sudoku/README.md" target="_blank">35314・Valid Sudoku</a> </li></ul><h3>地狱 (17)</h3><ul><li><a href="./questions/00005-extreme-readonly-keys/README.zh-CN.md" target="_blank">5・获取只读属性</a> </li><li><a href="./questions/00151-extreme-query-string-parser/README.md" target="_blank">151・Query String Parser</a> </li><li><a href="./questions/00216-extreme-slice/README.md" target="_blank">216・Slice</a> </li><li><a href="./questions/00274-extreme-integers-comparator/README.md" target="_blank">274・Integers Comparator</a> </li><li><a href="./questions/00462-extreme-currying-2/README.zh-CN.md" target="_blank">462・柯里化 2</a> </li><li><a href="./questions/00476-extreme-sum/README.md" target="_blank">476・Sum</a> </li><li><a href="./questions/00517-extreme-multiply/README.md" target="_blank">517・Multiply</a> </li><li><a href="./questions/00697-extreme-tag/README.md" target="_blank">697・Tag</a> </li><li><a href="./questions/00734-extreme-inclusive-range/README.md" target="_blank">734・Inclusive Range</a> </li><li><a href="./questions/00741-extreme-sort/README.md" target="_blank">741・Sort</a> </li><li><a href="./questions/00869-extreme-distributeunions/README.md" target="_blank">869・DistributeUnions</a> </li><li><a href="./questions/00925-extreme-assert-array-index/README.md" target="_blank">925・Assert Array Index</a> </li><li><a href="./questions/06228-extreme-json-parser/README.md" target="_blank">6228・JSON Parser</a> </li><li><a href="./questions/07561-extreme-subtract/README.md" target="_blank">7561・Subtract</a> </li><li><a href="./questions/31447-extreme-countreversepairs/README.md" target="_blank">31447・CountReversePairs</a> </li><li><a href="./questions/31997-extreme-parameter-intersection/README.md" target="_blank">31997・Parameter Intersection</a> </li><li><a href="./questions/33345-extreme-dynamic-route/README.md" target="_blank">33345・Dynamic Route</a> </li></ul></details><br>
<!--challenges-end-->

> ✨ [即将到来的新题目](https://github.com/type-challenges/type-challenges/issues?q=is%3Aissue+is%3Aopen+label%3Anew-challenge)

> 🔥 在 [TypeScript Playground](https://www.typescriptlang.org/play?install-plugin=%40type-challenges%2Fplayground-plugin) 开始挑战

> 🚀 无需网络，在[支持 TypeScript 的 IDE 或者文本编辑器](#离线挑战)中开始挑战

> ⚡️ 使用 [VS Code 插件](https://marketplace.visualstudio.com/items?itemName=YRM.type-challenges)开始挑战

## 推荐读物

### 官方资源 (英文)

- [The TypeScript Handbook](https://www.typescriptlang.org/docs/handbook/intro.html)

  - [Unions and Intersection Types](https://www.typescriptlang.org/docs/handbook/unions-and-intersections.html)
  - [Literal Types](https://www.typescriptlang.org/docs/handbook/literal-types.html)
  - [Utility Types](https://www.typescriptlang.org/docs/handbook/utility-types.html)
  - [Advanced Types](https://www.typescriptlang.org/docs/handbook/advanced-types.html)

- [The New Handbook](https://github.com/microsoft/TypeScript-Website/tree/v2/packages/documentation/copy/en/handbook-v2)

### 知乎专栏

- [来玩TypeScript啊，机都给你开好了！](https://zhuanlan.zhihu.com/c_206498766)

### 文章（英文）

- [Learn Advanced TypeScript Types](https://medium.com/free-code-camp/typescript-curry-ramda-types-f747e99744ab)
- [The Art of Type Programming](https://mistlog.medium.com/the-art-of-type-programming-cfd933bdfff7)
- [Type Query: jQuery Style Type Manipulation](https://mistlog.medium.com/type-query-jquery-style-type-manipulation-497ce26d93f)

### 视频

- [Type Level Programming in Typescript](https://www.youtube.com/watch?reload=9&v=vGVvJuazs84)

### 项目 / 题解

- [Type Gymnastics](https://github.com/g-plane/type-gymnastics)
- [Type Challenges Solutions](https://github.com/ghaiklor/type-challenges-solutions)
- [TypeType Examples](https://github.com/mistlog/typetype-examples)

### 书籍
- [Effective TypeScript](https://effectivetypescript.com/)
- [Learning TypeScript](https://www.learningtypescript.com/)
- [TypeScript in 50 Lessons](https://typescript-book.com/)
- [TypeScript Cookbook](https://typescript-cookbook.com/)

## 参与贡献

你可以通过如下几种方式参与贡献这个项目

- 分享你的答案或解题思路
- 提案加入新的题目
- 完善已有题目的测试用例
- 提供针对题目的学习资料或方法
- 分享你在真实项目中遇到的类型问题（无论你找到答案与否）- 大家会一起帮你找到解决的思路
- 通过在 Issue 下留言帮助他人
- 帮助完善这个项目的更多部分，详见 [TODOs.md](./TODOs.md)

[开一个新的 Issue](https://github.com/type-challenges/type-challenges/issues/new/choose) 并选择相应的模板即可，感谢参与！

> 💡 尽管你可以使用中文进行讨论，我们还是鼓励你尝试使用英文发起 Issue 与评论，这样可以让你的问题被更多人看到也可以帮助更多人。

## 离线挑战

你可以在本地生成这些题目，然后用你熟悉的任何支持 TypeScript 的 IDE 或者文本编辑器开始做题。

构建这些题目前，你需要安装好最新版的 [Node.js](https://nodejs.org/) 和 [pnpm](https://pnpm.io)。

克隆此仓库后，运行下方命令行安装依赖：

```bash
pnpm install
```

然后，运行生成脚本：

```bash
pnpm generate
```

这将会提示你选择语言，然后你就可以在 `./playground` 文件夹中找到生成的题目。

如果你想要在保留自己的答案的情况下获取题目的更新，可以运行：

```bash
pnpm generate --keep-changes
```
或者
```bash
pnpm generate -K
```

## 致谢

这个项目诞生于 [@hardfist](https://github.com/hardfist) 和 [@MeCKodo](https://github.com/MeCKodo) 两位朋友做的类型体操。同时也非常感谢 [@sinoon](https://github.com/sinoon) 在项目初期提供了宝贵的反馈意见与参与的贡献。

### 灵感来源

- [piotrwitek/utility-types](https://github.com/piotrwitek/utility-types)
- [psmyrdek/typescript-challenges](https://github.com/psmyrdek/typescript-challenges)
- [andnp/SimplyTyped](https://github.com/andnp/SimplyTyped)

### [贡献者](https://github.com/type-challenges/type-challenges/graphs/contributors)

![Contributors](https://contrib.rocks/image?repo=type-challenges/type-challenges)

## 使用的协议

MIT
