我打算编写同步JavaScript。我知道诺言可以做到这一点。
这不完全正确。 Promise仍然需要异步编程,但它们很好地逃脱了回调地狱。
如何为PhantomJS编写同步JavaScript代码?
PhantomJS API使用回调工作。它不会发出可以使用的承诺。当然,您可以编写一个围绕PhantomJS的包装器来支持类似promise的API,但这样就太过分了。看一下构建在PhantomJS(和Slimer.js)之上的CasperJS并提供类似于promise语法的API,但是存在差异。我an answer显示了使用CasperJS的一些复杂性。