一推网

当前位置: 首页 > 知识问答 > 关于history、hash区别详情

知识问答

关于history、hash区别详情

2025-09-21 20:54:21 来源:互联网转载

  众所周知,hash、history都是通过浏览器实现两种特性的,history是利用浏览历史记录栈的API实现,hash是**location对象hash值变化事件来实现,具体区别如下:

  1.hash路由在地址栏URL上有#,用 window.location.hash 读取。而history路由没有会好看一点

  2.我们进行回车刷新操作,hash路由会加载到地址栏对应的页面,而history路由一般就404报错了(刷新是网络请求,没有后端准备时会报错)。

  3.hash路由支持低版本的浏览器,而history路由是HTML5新增的API。

  4.hash的特点在于它虽然出现在了URL中,但是不包括在http请求中,所以对于后端是没有一点影响的,所以改变hash不会重新加载页面,所以这也是单页面应用的必备。

  5.history运用了浏览器的历史记录栈,之前有back,forward,go方法,之后在HTML5中新增了pushState()和replaceState()方法,它们提供了对历史记录进行修改的功能,不过在进行修改时,虽然改变了当前的URL,但是浏览器不会马上向后端发送请求。

  

上一篇:微信公众号注册流程

下一篇:网站有哪些常见漏洞检测方法呢