是否有一种方法来执行JavaScript和显示使用Visual Studio代码的结果?
例如,一个脚本文件包含:
console.log('hello world');
我假设Node.js是需要的,但不知道如何做到这一点?
通过Visual Studio Code,我指的是来自微软的新代码编辑器 不是用Visual Studio编写的代码。
是否有一种方法来执行JavaScript和显示使用Visual Studio代码的结果?
例如,一个脚本文件包含:
console.log('hello world');
我假设Node.js是需要的,但不知道如何做到这一点?
通过Visual Studio Code,我指的是来自微软的新代码编辑器 不是用Visual Studio编写的代码。
当前回答
在Visual Studio Code中运行javascript有很多方法。
如果您使用Node,那么我建议使用VSC中的标准调试器。
我通常创建一个虚拟文件,比如test.js,在那里我做外部测试。
在存放代码的文件夹中,创建名为“”的文件夹。然后创建一个名为launch。json的文件
在此文件中粘贴以下内容并保存。现在您有两个选项来测试您的代码。
当你选择“Nodemon Test File”时,你需要把你的代码放在Test .js中进行测试。
要安装nodemon以及更多关于如何在VSC中调试nodemon的信息,我建议阅读这篇文章,它更详细地解释了发布的第二部分。json文件和如何调试在ExpressJS。
{
"version": "0.2.0",
"configurations": [
{
"type": "node",
"request": "launch",
"name": "Nodemon Test File",
"runtimeExecutable": "nodemon",
"program": "${workspaceFolder}/test.js",
"restart": true,
"console": "integratedTerminal",
"internalConsoleOptions": "neverOpen"
},
{
"type": "node",
"request": "attach",
"name": "Node: Nodemon",
"processId": "${command:PickProcess}",
"restart": true,
"protocol": "inspector",
},
]
}
其他回答
集成终端的快捷方式是ctrl + ',然后键入node <filename>。
或者,您可以创建一个任务。这是唯一的代码在我的tasks.json:
{
// See https://go.microsoft.com/fwlink/?LinkId=733558
// for the documentation about the tasks.json format
"version": "0.1.0",
"command": "node",
"isShellCommand": true,
"args": ["${file}"],
"showOutput": "always"
}
从这里创建一个捷径。这是我的keybindings.json:
// Place your key bindings in this file to overwrite the defaults
[
{ "key": "cmd+r",
"command": "workbench.action.tasks.runTask"
},
{ "key": "cmd+e",
"command": "workbench.action.output.toggleOutput"
}
]
这将在命令面板中打开“运行”,但你仍然需要用鼠标键入或选择你想要运行的任务,在这种情况下是节点。第二个快捷键切换输出面板,它已经有一个快捷键,但这些键彼此相邻,更容易使用。
我很惊讶居然没有人提到这一点:
只需在VS Code中打开有问题的.js文件,切换到“调试控制台”选项卡,点击左侧导航栏中的调试按钮,然后点击运行图标(播放按钮)!
需要安装nodejs !
用npm安装nodemon Init nodemon: npm Init 打开的包。Json,并将其更改为: { “名称”:“JavaScript”, “版本”:“1.0.0”, “描述”:“”, “主要”:“{文件名}. js”, "脚本":{ "test": "echo \"错误:没有测试指定的\" && exit 1", "start": "nodemon {filename}.js" }, “关键词”:[], “作者”:“”, “许可证”:“ISC” } 在终端上写这个命令:npm start
这很简单,当你在VS Code中创建一个新文件并运行它时,如果你还没有配置文件,它会为你创建一个,你唯一需要设置的是“program”值,并将其设置为你的主JS文件的路径,如下所示:
{
"version": "0.1.0",
// List of configurations. Add new configurations or edit existing ones.
// ONLY "node" and "mono" are supported, change "type" to switch.
// ABSOLUTE paths are required for no folder workspaces.
"configurations": [
{
// Name of configuration; appears in the launch configuration drop down menu.
"name": "Launch",
// Type of configuration. Possible values: "node", "mono".
"type": "node",
// ABSOLUTE path to the program.
"program": "C:\\test.js", //HERE YOU PLACE THE MAIN JS FILE
// Automatically stop program after launch.
"stopOnEntry": false,
// Command line arguments passed to the program.
"args": [],
// ABSOLUTE path to the working directory of the program being debugged. Default is the directory of the program.
"cwd": "",
// ABSOLUTE path to the runtime executable to be used. Default is the runtime executable on the PATH.
"runtimeExecutable": null,
// Optional arguments passed to the runtime executable.
"runtimeArgs": [],
// Environment variables passed to the program.
"env": { },
// Use JavaScript source maps (if they exist).
"sourceMaps": false,
// If JavaScript source maps are enabled, the generated code is expected in this directory.
"outDir": null
},
{
"name": "Attach",
"type": "node",
// TCP/IP address. Default is "localhost".
"address": "localhost",
// Port to attach to.
"port": 5858,
"sourceMaps": false
}
]
}
为了简单地运行代码并在控制台上显示输出,您可以创建一个任务并执行它,就像@canerbalci提到的那样。
这样做的缺点是,你只能得到输出,仅此而已。
我真正喜欢做的是能够调试代码,让我们说我试图解决一个小算法或尝试一个新的ES6功能,我运行它,有一些可疑的东西,我可以在VSC中调试它。
因此,我没有为它创建一个任务,而是修改了.vscode/launch。Json文件,如下所示:
{
"version": "0.2.0",
"configurations": [
{
"name": "Launch",
"type": "node",
"request": "launch",
"program": "${file}",
"stopOnEntry": true,
"args": [],
"cwd": "${fileDirname}",
"runtimeExecutable": null,
"runtimeArgs": [
"--nolazy"
],
"env": {
"NODE_ENV": "development"
},
"externalConsole": false,
"sourceMaps": false,
"outDir": null
}
]
}
这将在VSC的调试器中启动您当前所在的文件。它设置在启动时停止。
要启动它,在要调试的文件中按F5键。