【问题标题】:Variable showing as both having a value and as being undefined in Chrome debugger?变量在 Chrome 调试器中显示为既具有值又未定义?
【发布时间】:2014-10-21 21:12:46
【问题描述】:

我有这个打字稿功能:

retrieve = () => {
        var url = "/api/Exam/Retrieve/" +
            this.configService.admin.examStatusId + "/" +
            this.configService.admin.examTypeId + "/" +
            this.userService.data.subjectId;
        this.home.retrieve(url)
    }

当我在this.home.retrieve(url) 这一行上打断并将鼠标悬停在examStatusId 和examTypeId 和subjectId 上时,我看到值1,1 和1。

当我将鼠标悬停在 url 上时,我看到 "/api/Exam/Retrieve/undefined/undefined/1"

这是我的控制台输出:

console.log(this.configService.admin.examStatusId)
1
undefined
console.log(url)
/api/Exam/Retrieve/undefined/undefined/1
undefined

有人可以解释为什么在执行 console.log 时我在第二行看到“1”,然后在“未定义”下方,以及为什么 url 未定义?

问题已解决:

我的 Typescript 没有正确编译为 Javascript。我正在调试 Typescript,但它背后是旧的 javascript!

【问题讨论】:

标签: javascript variables typescript undefined google-chrome-devtools


【解决方案1】:

第二行是console.log 函数的返回值,为方便起见由控制台打印(以及undefined,因为没有返回值)。第一行是console.log的实际输出。

【讨论】:

  • 谢谢。你知道为什么 url 可能显示 undefineds 吗?
  • 好的,问题解决了。做了一些更改后,我的 Typescript 没有正确编译为 Javascript。感谢您对返回值的回答。
猜你喜欢
  • 1970-01-01
  • 2018-03-11
  • 1970-01-01
  • 2016-12-04
  • 2011-03-14
  • 1970-01-01
  • 2011-06-05
  • 2012-11-24
  • 2023-04-03
相关资源
最近更新 更多