改变url,页面不刷新
location.hash = ‘aaa’ --->http://www.baidu.com/#/aaa
history.pushState( { } , ’ ’ , ’ aaa ’ ) --->http://www.baidu.com/aaa
history.pushState( { } , ’ ’ , ’ bbb ’ ) --->http://www.baidu.com/bbb
history.pushState( { } , ’ ’ , ’ ccc ’ ) --->http://www.baidu.com/ccc
栈结构---先进 后出 (压底) 后进 先出 类型弹夹里的子弹
history.pushState( ) 等于是入栈
当前url --- > http://www.baidu.com/ccc
history.back( ) 等于是出栈 --->http://www.baidu.com/bbb
history.back( ) --->http://www.baidu.com/aaa
当前url --- > http://www.baidu.com/ccc
history.go( -1 ) 等于是出栈 --->http://www.baidu.com/bbb
当前url --- > http://www.baidu.com/ccc
history.go( -2 ) 等于是出栈 --->http://www.baidu.com/aaa
当前url --- > http://www.baidu.com/aaa
history.go( 2 ) 等于是出栈 --->http://www.baidu.com/ccc
history.back( ) = history.go( -1 )
history.forward( ) = history.go( 1 )
history.replaceState( { } , ‘ ‘ , ‘ aaa ‘ ) --->http://www.baidu.com/aaa
history.replaceState( { } , ‘ ‘ , ‘ bbb ‘ ) --->http://www.baidu.com/bbb
repalceState( )和pushState( )不同点是replaceState之后不能退回上一页