写法 A
const age = Number(raw);
const valid = !Number.isNaN(age);
必填年龄输入可能为空、含空格或含字母。A、B 哪个先区分了“缺失”与“无法转成数字”?
const age = Number(raw);
const valid = !Number.isNaN(age);
const text = raw.trim();
const age = Number(text);
const valid = text !== '' && Number.isFinite(age);
提问:指出关键差异,给出适用条件或反例;不要仅以代码长短判断。以上为对照片段,阅读其前提后再分析。
B 排除了空白文本和非有限数值。两者都还需要按业务检查年龄范围和整数约束;不能把一次转换等同于完整校验。