文档声称WHATWG URL API在Node.js和浏览器中应该表现一致,但这里有一个反例:
在浏览器中运行此代码(或在Stack Overflow上),你会得到
在Node.js中运行此代码(或在RunKit上)https://runkit.com/embed/cfo21jyrrvxq,你会得到
浏览器的输出是不正确的,那不是一个有效的URL。有没有办法让浏览器像Node.js一样工作?我更希望找到一个长期符合标准的解决方案,而不仅仅是安装另一个软件包。
console.log(new URL('http://exa mple.com').origin)
http://exa%20mple.com
。在Node.js中运行此代码(或在RunKit上)https://runkit.com/embed/cfo21jyrrvxq,你会得到
TypeError: Invalid URL
。浏览器的输出是不正确的,那不是一个有效的URL。有没有办法让浏览器像Node.js一样工作?我更希望找到一个长期符合标准的解决方案,而不仅仅是安装另一个软件包。
encodeURIComponent()
和decodeURIComponent()
。所以你的示例看起来像这样:console.log(new URL(encodeURIComponent("http://example.com")).origin);
- undefinedURL
构造函数进行验证吗? - undefinedURL
API的哪个具体功能? - undefinedurl.parse("http://exa mple.com")
,你会得到http://exa/%20mple.com
。 - undefined