let url = new URL("https://stackoverflow.com/questions/ask")
它将收到如下错误:
URL未定义
实际上,在现代浏览器中,它运行良好。但是,如果您在node.js
环境中运行它,则会收到类似的错误。
我研究了documentation,它说这是一个全球课程:
与浏览器兼容的URL类,通过遵循WHATWG URL实现 标准。在标准本身中可以找到解析的URL的示例。 URL类在全局对象上也可用。
那有什么问题?
答案 0 :(得分:22)
尝试添加此行:
var URL = require('url').URL;
完整的示例在这里:
var URL = require('url').URL;
var myURL = new URL('http://www.example.com/foo?bar=1#main');
console.log(myURL.host);
// prints 'www.example.com'
所有这些都来自this很棒的教程。
答案 1 :(得分:2)
URL
是全局变量。确保您使用的是Node.js 10或更高版本。使用版本v8.11.2
时,我遇到了同样的问题。
您可以使用以下命令在Mac OS上升级节点
brew upgrade node
或从nodejs官方网站下载。
答案 2 :(得分:1)
有时候,您只需要更改节点的本地版本:
例如:nvm use 12.18.3
但请更早检查您已经拥有nvm list
的哪些版本