用TypeScript校验TVS参数条件:VRWM、IR和VC不能缺少测试字段

TVS选型系统如果把所有参数都设计成一个number,很容易出现两类错误:把典型值当最大值,或把脱离测试条件的数字直接比较。更稳妥的做法是把电气值与测试条件建模为同一个对象,并在导入阶段拒绝不完整记录。

定义可追溯的数据结构

下面是可直接运行的TypeScript示例,数据为演示用途:

vbnet 复制代码
// @ts-check
/** @typedef {"typical" | "maximum"} LimitKind */
/**
 * @typedef {Object} TvsRecord
 * @property {string} partNumber
 * @property {string} datasheetRevision
 * @property {number} vrwmV
 * @property {{valueUa:number, atVoltageV:number, temperatureC:number, limit:LimitKind}} leakage
 * @property {{voltageV:number, pulseCurrentA:number, waveform:string, limit:LimitKind}} clamping
 * @property {string} sourceUrl
 */

这套结构强制IR携带测试电压与温度,VC携带脉冲电流和波形。数据使用方不需要猜测字段含义。

导入时拒绝缺条件的数据

csharp 复制代码
/** @param {TvsRecord} record @returns {string[]} */
function validateTvs(record) {
  const errors = [];

  if (!record.partNumber.trim()) errors.push("partNumber is required");
  if (!record.datasheetRevision.trim()) errors.push("datasheetRevision is required");
  if (!(record.vrwmV > 0)) errors.push("vrwmV must be positive");
  if (!(record.leakage.atVoltageV > 0)) errors.push("IR test voltage is required");
  if (!Number.isFinite(record.leakage.temperatureC)) errors.push("IR temperature is required");
  if (!(record.clamping.pulseCurrentA > 0)) errors.push("VC pulse current is required");
  if (!record.clamping.waveform.trim()) errors.push("VC waveform is required");
  if (!record.sourceUrl.startsWith("https://")) errors.push("HTTPS source URL is required");

  return errors;
}

规格书未给出条件时,应保留为空并转人工审核,不要在爬取或导入脚本里猜一个默认值。

比较函数也要检查前提

IR只有在测试电压、温度和限值口径相同时才适合直接排序。VC同样要先核对脉冲电流和波形。可以让比较函数先返回comparable: false,而不是硬算排名。

阿赛姆SMA04J Rev1.4把VRWM、VBR、VC、IPP和IR列在同一表中,适合作为结构化录入示例。系统还应保存页码或表格位置,方便人工回到原始资料。

参考资料:

相关推荐
mmsx1 小时前
Android GIS系列 串口、蓝牙、USB、网络:一套统一抽象怎么扛住四种通道
android·app·产品
阿赛姆电子1 小时前
TVS二极管应用候选表怎样用脚本检查?波形条件不同不能直接排序
产品
SL_staff7 天前
从RBAC到场景化授权:《无忧·企业文档》三级权限模型的技术实践解析
java·开源·产品
九五视界7 天前
元数据驱动:我让 CRM 新增字段不用改代码、不用发版
产品
小酒星小杜12 天前
【AI+Gpt-Image2.5】我偷偷把同事做成了虚拟角色,结果被发现了
人工智能·程序员·产品
Wenkil12 天前
当 PRD 里只有一句“支持语音识别”:我如何用 AI 把它补成可开发规格
产品
乱码三千13 天前
关于让我的 AI 智能体去当三陪帮我打工赚钱这件事,需要从长计议
人工智能·开源·产品
小哈里13 天前
【知识】从学科到实践:自然・工程・社科・人文|算法・研发・产品・品牌设计
程序人生·算法·产品·设计·工程
爱勇宝17 天前
《道德经》第 11 章:真正有用的,常常是你没写出来的那部分
前端·后端·产品