在这段生成的规范化函数处理不可信任务记录前,对它进行审查。
接收只含自有属性的记录:enabled 为 Boolean 或准确的 "true"/"false",retries 为 0 到 10 的完整十进制值,labels 为字符串数组,name 可选且允许空字符串。
JavaScript
function normalizeJob(input) {
const result = {};
for (const key in input) {
result[key] = input[key];
}
const enabled = Boolean(input.enabled);
const retries = parseInt(input.retries, 10);
if (!Number.isFinite(retries) || retries > 10) {
throw new TypeError("invalid retries");
}
const labels = typeof input.labels === "object"
? [...input.labels]
: [];
result.enabled = enabled;
result.retries = retries;
result.labels = labels;
result.name = input.name || "worker";
return result;
}
生成代码仅作示例,不代表任何特定模型