You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Apps Script报TypeError求助:无法读取undefined的'name'属性

问题分析与修复方案

你的问题出在没有先判断project_manager本身是否存在——如果API返回的某个项目里project_manager是null或者undefined,直接访问.name会直接抛出TypeError,这就是你修改后脚本崩溃的原因。

修正后的代码

你需要先检查project_manager是否存在,再去访问它的name属性,推荐用短路求值简化判断:

const pmName = jsonObject.data[i].project_manager?.name || "";
arrayProjectManagerName.push([pmName]);

或者用传统的多层判断(兼容更旧的环境):

let pmName = "";
if (jsonObject.data[i].project_manager && jsonObject.data[i].project_manager.name) {
  pmName = jsonObject.data[i].project_manager.name;
}
arrayProjectManagerName.push([pmName]);

为什么你的修改会失败

你原来的代码直接写jsonObject.data[i].project_manager.name === undefined,如果project_manager本身是null,这行代码会先尝试读取null.name,直接触发错误,根本走不到判断逻辑里。

额外建议

可以在循环里加个日志,方便排查这类问题:

console.log(`项目${i}的project_manager数据:`, jsonObject.data[i].project_manager);

这样能直观看到哪些项目的项目经理字段有异常。

内容的提问来源于stack exchange,提问作者Bart

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.10 16:35:21