window.location.reload(false);window.location.reload(true);history.Go区别

Posted fineday

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了window.location.reload(false);window.location.reload(true);history.Go区别相关的知识,希望对你有一定的参考价值。

在日常工作中常用的页面刷新方式的区别: 
1 window.location.reload(false); 
  先说说window.location.reload(false);当我们window.location.reload();默认也是false
  它先会根据浏览器的http请求的头部 If-Modified-Since的值来判断在请求文件时文件是否发生变化,如果没有就从缓存中找到更新到页面。

  如果有form,会重新提交form表单

2 window.location.reload(true); 
  这个跟false的有区别,无论文档的修改时间是什么,或者有没有缓存,它都会从新在服务器端请求一次来更新到页面。

  如果有form,会重新提交form表单

3 history.Go(0) 
  先说说history,history就是你访问的页面跟路由的记录,它会实时更新到history里面去,当你history.go(xx),会根据记录的路由匹配对应的以及缓存好的页面,也就是说所有的history都是调用已经被缓存的页面。

4 window.location.href = window.location.href 

  相当于重新请求url。

  如果有form,不会提交form数据

最后再说说浏览器的左上角返回箭头按钮 
它的作用是返回上个页面,但是返回后页面的数据也就是并不会更新,文档也不更新。

注:window.location.reload(),window.location.reload(true),history.Go(0),都会更新数据,对于文档更新与否上面已经解释过了。

以上是关于window.location.reload(false);window.location.reload(true);history.Go区别的主要内容,如果未能解决你的问题,请参考以下文章

window.location.href=window.location.href 和 window.location.reload() 的区别

为啥我在js里面用window.location.reload(true);不刷新页面?

window.location.Reload()和window.location.href 区别

window.location.Reload()和window.location.href 区别

(window,parent,opener,top).location.reload方法汇总

在 $state.go 之后执行 $window.location.reload(true)