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

JS调用名言接口打印作者和名言内容代码不生效如何解决?

接口打印功能问题排查
  • 核心触发问题:你当前的代码仅完成了两个功能函数的定义,没有主动执行入口函数showJokes(),这是绝大多数情况下代码无任何输出的直接原因,只需要在代码末尾添加一行showJokes()即可触发请求和打印逻辑。
  • 现有代码的冗余写法修正:你在forEach循环内写的return没有实际作用,forEach方法不接收回调函数的返回值,直接调用showAllJokes方法即可,虽然不会影响打印功能但属于不规范写法。
  • 建议添加错误捕获逻辑:当前代码没有请求异常、数据解析异常的捕获分支,一旦接口下线、跨域或返回格式异常,你无法拿到报错信息定位问题,建议补充catch错误处理分支。

修复后的完整代码如下:

const showJokes = () => {
  return fetch("https://quote-garden.herokuapp.com/api/v3/quotes")
    .then(response => {
      // 先判断请求状态是否正常
      if (!response.ok) throw new Error('接口请求异常')
      return response.json()
    })
    .then(data => {
      data.data.forEach(message => {
        let author = message.quoteAuthor;
        let quote = message.quoteText;
        showAllJokes(`${author} - ${quote}`)
      })
    })
    .catch(err => {
      // 捕获全链路错误方便排查
      console.error('运行出错:', err)
    })
}

function showAllJokes(fullName) {
  console.log(fullName);
}

// 主动调用入口函数触发逻辑
showJokes()

如果添加调用逻辑后还是无法运行,可以打开浏览器开发者工具的Console面板查看报错信息,优先检查网络请求是否正常,该公共接口可能存在限流、下线或者跨域限制。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.27 13:36:03