最近在看《單頁Web應用 JavaScript從前端到後端》,看到最後一小節的時候,因爲變量不少,有些看不懂了javascript
就把變量一個一個打印出來進行分析,發現有一個值一直不知道從那裏來的。前端
問題:點擊紅色框,打印stateMap.anchor_map的值java
操做:console.log(stateMap.anchor_map)jquery
描述:後端
第一次打印時,數據是空的,這是正確的ide
第二次打印時,出現兩個數據chat和_s_chat,chat有值是正確的spa
問題是不知道_s_chat 哪來的?.net
而後看到別人的博客上分析了jquery的插件uriAnchor,知道這個值哪來的了。插件
在《單頁Web應用 JavaScript從前端到後端》中,對stateMap.anchor_map用到了賦值語句3d
出現_s_chat是$.uriAnchor.makeAnchorMap()的緣由。
來源:博客(http://blog.csdn.net/fengyinchao/article/details/50642941)
分析URL並生成一個映射,這個方法會在返回的映射裏面爲帶有依賴值的獨立值建立額外的鍵_s_<indendent_arg>
,這些額外的鍵的值是一個獨立值後面跟着全部的依賴值.
示例:
假若有以下anchor,
輸出:
{ page : 'profile', _page : { uname : 'wendy', online : 'true' }, _s_page : 'profile:uname,wendy|online,true', slider : 'confirm', _slider : { text : 'hello', pretty : false }, _s_slider : 'confirm:text,hello|pretty,false', color : 'red' };