Schema 验证库(Zod/Valibot)

共 33 题
#

1. Yup/joi/zod 在前后端共享 schema 的工程取舍

A Yup 类型最强
B joi 体积最小
C zod 类型推导强、生态广,适合共享 ✓ 正确答案
D 无法共享
#

2. RHF + Zod 与 Conform + Valibot 的选型

A RHF+Zod 适合 SPA,Conform+Valibot 适合 Remix ✓ 正确答案
B 两者相同
C 都适合 Remix
D 都与框架无关
#

3. 多步/向导表单的状态分片(每步独立 schema)与跨步校验、步骤回退时的数据保留设计

A 无状态分片
B 回退清空
C 每步全量校验
D 分步字段存储,回退时恢复该步数据 ✓ 正确答案
#

4. Valibot/ArkType/Effect 在 Zod 体积与性能的工程取舍

A Valibot 体积小、ArkType 类型强、Effect 函数式 ✓ 正确答案
B 全部相同
C Zod 体积最小
D Valibot 类型最强
#

5. Zod v4 在 schema 校验与 TypeScript 类型推导的工程价值

A 类型与校验分离
B schema 同时驱动类型与校验,单一来源 ✓ 正确答案
C 无类型推导
D 只校验
#

6. Valibot 的模块化 API 与 Zod 的 tree-shaking 工程价值

A 无法摇树
B 模块化 API 使 tree-shaking 更彻底,体积更小 ✓ 正确答案
C 打包全部
D 与 Zod 相同
#

7. Valibot(极小、模块化 API、Tree-shakable)

A 全量打包
B 体积最大
C 无法类型推导
D 极小体积 + 模块化 + tree-shakable ✓ 正确答案
#

8. Zod(生态最广,事实标准)的 Schema 校验

A 生态最广、类型推导强、集成成熟 ✓ 正确答案
B 生态最小
C 无集成
D 类型弱
#

9. ArkType(TypeScript-first、编译时优化)

A 运行时为主
B TypeScript-first、编译时优化、类型推导强 ✓ 正确答案
C 类型弱
D 无优化
#

10. Yup(老牌)的企业遗留项目

A 已弃用
B 类型最强
C 新项目首选
D 成熟但类型推导弱,遗留项目继续用、新项目用现代库 ✓ 正确答案
#

11. ArkType / Valibot 在 bundle 体积敏感的工程价值

A Valibot/ArkType 体积小、性能优 ✓ 正确答案
B Zod 体积最小
C 全部相同
D 无优化
#

12. SuperJSON/Standard Schema 在跨 web/electron/node 共享 schema 的工程价值

A 统一不同校验库接口,支持跨端共享 ✓ 正确答案
B 只序列化
C 绑定单一库
D 无法互操作
#

13. Zod 4 在 TypeScript-first Schema 校验的现代工程价值

A 类型优先、体积更小、性能更快、跨端共享 ✓ 正确答案
B 体积更大
C 无类型
D 性能更差
#

14. Yup 在 React Hook Form 的经典集成与现状

A 无法集成
B 类型最强
C 新项目首选
D 经典集成成熟但类型弱,新项目用 zodResolver ✓ 正确答案
#

15. ArkType 在 TypeScript 推导性能的现代应用

A 性能差
B 运行时全量
C 无类型
D 编译时类型推导,减少运行时开销 ✓ 正确答案
#

16. Zod 4 的 z.infer 在类型推导的工程价值

A 手写类型
B 从 schema 推导类型,单一来源 ✓ 正确答案
C 无类型
D 只校验
#

17. Zod 4 的 z.coerce 在类型强制转换(字符串转数字)的工程实践

A 只校验
B 强制转换类型(如字符串转数字)并校验 ✓ 正确答案
C 无法转换
D 只能字符串
#

18. ArkType 的 type({...}) 在编译时 Schema 校验的现代应用

A 编译时推导类型 + 运行时校验,类型与校验合一 ✓ 正确答案
B 仅运行时
C 无类型
D 仅编译时
#

19. Yup 的 lazy 在递归 Schema(树形结构)的工程应用

A 动态生成 schema 支持递归树形校验 ✓ 正确答案
B 只能静态
C 无法递归
D 只扁平
#

20. Zod 4 的异步校验(refine with async)的现代工程实践

A 无法异步
B 只同步
C 异步校验(如唯一性检查) ✓ 正确答案
D 只格式化
#

21. ArkType 的 morph 在数据转换与校验的现代应用

A 无法转换
B 只校验
C 校验后转换数据 ✓ 正确答案
D 只类型
#

22. Zod 4 的 z.transform 在数据变形(API 响应映射)的工程价值

A 只校验
B 校验后变形数据,用于 API 映射与类型推导 ✓ 正确答案
C 无法变形
D 只输入
#

23. Yup 与 Zod 在 React Hook Form 的现代集成的取舍

A 无法集成
B Yup 类型最强
C 两者相同
D Zod 类型强、生态广,现代首选;Yup 类型弱 ✓ 正确答案
#

24. Valibot 的 modular API(object、string 拆分)在 tree-shaking 的工程价值

A 无法摇树
B 全量打包
C 按需打包用到的校验器,体积最小 ✓ 正确答案
D 与体积无关
#

25. Zod 4 的 JSON Schema 转换(z.toJSONSchema)在 OpenAPI 的工程应用

A 只校验
B 转 JSON Schema 供 OpenAPI 契约使用 ✓ 正确答案
C 无法转
D 与 API 无关
#

26. ArkType 与 TypeScript 类型系统的深度集成(type Narrow)的现代边界

A 生态成熟
B 覆盖所有
C 无类型
D 类型推导强但复杂动态 schema 需运行时扩展、生态较新 ✓ 正确答案
#

27. 动态表单(字段动态增删、Schema 动态生成)

A 无法动态
B 静态 schema
C 字段数组 + 动态 schema 生成,校验动态适配 ✓ 正确答案
D 无校验
#

28. 嵌套字段数组(useFieldArray 嵌套)的性能问题与校验组织(按路径的 schema)

A 无法嵌套
B 扁平即可
C 按路径 schema 精确定位错误,关注性能 ✓ 正确答案
D 无性能问题
#

29. 跨字段联动校验(依赖字段、条件必填、动态 schema)的实现与校验时机

A 固定时机
B 字段独立
C 无法联动
D 整体 schema(superRefine)+ 条件 schema,按需校验时机 ✓ 正确答案
#

30. 表单 schema 版本化与旧草稿的兼容升级

A 无法迁移
B 旧数据丢弃
C 无版本
D 版本号 + 迁移函数,旧草稿兼容升级 ✓ 正确答案
#

31. Zod 与 TypeScript 类型推导,infer 与类型安全的边界?

A 类型即保证
B 编译期类型,运行时仍需校验 ✓ 正确答案
C 无运行时校验
D 类型无意义
#

32. Valibot 的模块化与体积,按需引入与 tree-shaking?

A 全量打包
B 模块化按需引入 + tree-shaking 只打包用到的部分 ✓ 正确答案
C 无法摇树
D 与体积无关
#

33. Schema 验证在运行时/表单/API 层的应用?

A 仅运行时
B 仅表单
C 仅 API
D 运行时、表单、API 层统一校验 ✓ 正确答案