【发布时间】:2018-03-01 00:23:24
【问题描述】:
我是node.js 的初学者。我刚刚读到我们可以使用.then() 函数以特定顺序执行多个函数。我打算这样写代码:
function one(){
console.log("one")
}
function two(){
console.log("two")
}
function three(){
console.log("three")
}
one().then(two()).then(three())
但是我收到了这个错误:
TypeError: Cannot read property 'then' of undefined
at Object.<anonymous> (C:\chat\test.js:10:6)
at Module._compile (module.js:570:32)
at Object.Module._extensions..js (module.js:579:10)
at Module.load (module.js:487:32)
at tryModuleLoad (module.js:446:12)
at Function.Module._load (module.js:438:3)
at Module.runMain (module.js:604:10)
at run (bootstrap_node.js:389:7)
at startup (bootstrap_node.js:149:9)
at bootstrap_node.js:502:3
【问题讨论】:
-
then被用于Promises。 -
这仅适用于 Promises 和返回 Promises 的函数。这不是 Node 拥有的所有方法都可用的东西。
-
在处理同步函数时,你不需要使用
then(你帖子中的那些)。如果你写one(); two(); three(),它们将完全按照这个顺序执行。 -
阅读 Javascript 承诺。如果您在 google 或 stackoverflow 上对 .then() 进行简单搜索,您将拥有大量资源。在发布问题之前进行研究,展示你学到了什么,然后如果你无法弄清楚,然后发布一个问题。
标签: node.js