我的问题是用另一种编程语言编写的setTimeout函数和其他web吗?由于其他编程语言语法不同,javascript如何使用其他编程语言特性。他们之间是否有任何翻译器来转换另一种语言的代码?
发布于 2020-05-19 10:57:39
没有涉及语言翻译,不,虽然环境之间肯定有一个界限。
当浏览器使用JavaScript引擎时,浏览器为引擎提供了一些东西,以便引擎完成其工作。其中之一是全局对象,它具有提供特定主机特性(如DOM、setTimeout等)的方法和属性。浏览器还为JavaScript引擎提供了不暴露于JavaScript代码的函数,用于执行解析模块之类的操作。
将JavaScript引擎看作是嵌入在浏览器应用程序中的库。浏览器代码调用库来为窗口/选项卡创建一个新的环境,并向库提供函数,以便执行诸如调度计时器回调之类的任务。
发布于 2020-05-19 10:58:16
从浏览器中公开的那些函数。
基本上就像
关于你的第二个问题,在js中是否有任何“转换程序”的转换程序语言:
有大量的转换程序,最简单的例子是tsc,它将类型转换为javascript。
此外,你没有问,但我觉得你想学习如何运作,所以我将增加一个奖金。
WebAssembly是浏览器的二进制格式,它是许多语言的编译器目标,这意味着不必费心地将东西转到js,您可以简单地将本机程序简化为组件,并在浏览器中运行本机代码。
https://stackoverflow.com/questions/61889199
复制相似问题