Javascript 如何将问号作为参数传递给history.pushState(“像这样”)

Javascript 如何将问号作为参数传递给history.pushState(“像这样”),javascript,ecmascript-6,Javascript,Ecmascript 6,基本上我想这样做,但我不想测试=是,我想它是“?测试=是” 如果我尝试windows.history.pushState(“,”,“?test=yes”)它根本不起作用,如上面修改为包含问号的JSFIDLE中所示 我尝试了url编码和转义,但仍然不起作用。window.history.pushState(“,”,“?test=yes”)可以。请参阅,问题是location。pathname是一个DOMString,包含初始“/”和URL路径,您应该使用location。搜索,它是一个DOMStr

基本上我想这样做,但我不想测试=是,我想它是“?测试=是”

如果我尝试
windows.history.pushState(“,”,“?test=yes”)
它根本不起作用,如上面修改为包含问号的JSFIDLE中所示


我尝试了url编码和转义,但仍然不起作用。

window.history.pushState(“,”,“?test=yes”)
可以。请参阅,问题是
location。pathname
是一个DOMString,包含初始“/”和URL路径,您应该使用
location。搜索
,它是一个DOMString,包含“?”和URL参数或“querystring”

这么快的回答,真的向我解释了发生了什么,非常感谢。