亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 編程 > JavaScript > 正文

js調試系列 源碼定位與調試[基礎篇]

2019-11-20 14:26:59
字體:
來源:轉載
供稿:網友

我們先來處理第一個問題:1. 查看文章下方 推薦 這個功能所調用的函數源碼
其實非常簡單,點放大鏡選中那個推薦即可。

這個  votePost(cb_entryId,'Digg')  就是推薦按鈕所調用的函數了,是不是非常簡單。

第二個問題,定位到函數所在文件位置。
其實也是非常簡單的,當然,不熟悉控制臺的朋友也許不知道怎么看。
我在控制臺輸入 votePost 然后回車,

函數源碼粗顯啦,并且在右下角有個鏈接 blog-common.js?v=WE8o1xrgcTu07QVvwYqERqD7AA8fdJp_dgoE-crAT3k1:1 這個是什么意思呢?
后面的 v=WE8o1xrgcTu07QVvwYqERqD7AA8fdJp_dgoE-crAT3k1 直接忽略好了。

ps: 如果想知道這個是什么東西,其實就是個版本號,至于什么作用,往往是防止緩存的,具體自己上網搜索吧。
blog-common.js:1 差不多就是這個意思。。
blog-common.js 是這個函數所在的js文件
1 是代碼所在的行號。

直接點擊這個鏈接,就可以跳轉到 Sources 面板,這個就是源碼面板,調試最重要的一個功能,之后會慢慢介紹。

可是所有代碼都在一行,我們改怎么看? 4946 個字符呢,全縮在一行上。。
chrome 給我們提供了一個代碼格式化的功能,點擊下方那個 Pretty print 按鈕即可格式化代碼。

格式化完畢之后就是非常美觀的代碼了,至于看不看的懂,那是另一回事了。
有的看不懂可能是代碼被UglifyJS,Google's Closure之類的工具編譯過,如 jquery.min.js 文件。
還有可能是水平太次了,暫時看不懂大神寫的代碼,那我也無能為力,你只能自己加油了努力提升實力了。
如果格式化夠找不到函數所在位置,也不要著急,有我在,慌啥?
回到剛才控制臺面板。

你欣喜的發現,blog-common.js?v=WE8o1xrgcTu07QVvwYqERqD7AA8fdJp_dgoE-crAT3k1:91
行號變成 91 了,現在再點擊這個鏈接,就可以跳轉到對應格式化后的位置了,是不是超方便。。

最后一個問題,修改函數使其無效,這個最簡單了,比剛才的簡單多了,可是很多人不會操作所以我特地拿出來講一下。
首先,我們知道了 推薦 這個功能調用的函數是  votePost(cb_entryId,'Digg') ,而且他是直接寫是 html 上通過 onclick 綁定的。
所以這個函數是一個全局函數,到處都可以調用,那這意味著什么呢?
意味著我們可以修改啊,好比一個全局變量,你在哪都能修改對吧,那全局函數也是應該道理。
所以我們直接修改為空函數即可。
 votePost = function () {};  或者  votePost = $.noop;  都可以。$.noop 是 jQuery 為我們提供的空函數,方便我們使用。


現在 votePost 就是一個空函數,所以你點擊 推薦 按鈕是不會發生任何事情的。
當然刷新頁面后會重新生效,我們只是在頁面上調試修改而已,沒有去改博客園的源碼,是不可能永久生效的。
所以調試的意思就是查找與排除錯誤的過程,如果定位到錯誤源了,修改下然后測試,如果不對,刷新后重新修改,這樣就不必修改實際文件而導致不可恢復了。

今天的內容差不多就這些了,其實現在很少有直接全局函數給你調試的,因為現在 jQuery 風靡,各種 click, on 之類的事件綁定,導致源碼定位非常繁瑣。
好在我之前寫了一篇,比較詳細的分析了這個問題,詳情請參閱《淺談 jQuery 事件源碼定位問題
其他框架我也不熟,所以沒分析,不過思路其實是差不多的,必然都會有一個事件管理機制。

今天知識點不多,但是要自己動手鞏固下,不然會秒忘的。

課后練習:
1. 分析 votePost 函數是如何實現 推薦 的。
2. 動態調試分析 votePost。(要結合斷點知識)

明天要講斷點與動態調試,我也沒找到合適的題目,就先湊合著做吧,如果你有合適的東西需要動態調試的,請跟帖。。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
亚洲字幕在线观看| 国产精品久久久一区| 久久久久一本一区二区青青蜜月| 国产成人一区二| 日韩欧美在线看| 亚洲大胆美女视频| 国产精品日韩欧美| 亚洲视频在线播放| 亚洲精品色婷婷福利天堂| 高清视频欧美一级| 欧美老女人xx| 久久中文精品视频| 国产一区二区av| 精品国产依人香蕉在线精品| 欧美怡红院视频一区二区三区| 国产精品色婷婷视频| 国产欧美精品在线| 亚洲欧美日韩中文在线制服| 欧美巨乳美女视频| 亚洲最大在线视频| 一本色道久久综合狠狠躁篇的优点| 97人人做人人爱| 欧美日韩在线第一页| 欧美福利视频在线观看| 福利一区福利二区微拍刺激| 日韩第一页在线| 成人妇女免费播放久久久| 亚洲视频在线视频| 国产一区二区三区在线播放免费观看| 午夜精品久久久久久久99黑人| 欧美成人国产va精品日本一级| 性欧美xxxx交| 久久精品国产久精国产思思| 26uuu亚洲伊人春色| 欧美放荡办公室videos4k| 久热99视频在线观看| 97精品国产aⅴ7777| 国产精品久久久久久久久久久不卡| 国产精品91久久| 欧美激情乱人伦| 91免费在线视频网站| 中文字幕精品久久| 亚洲成人精品av| 中文字幕亚洲色图| 国产精品视频区| 欧美日韩在线另类| 久久综合国产精品台湾中文娱乐网| 久久精品国产91精品亚洲| 国产精品小说在线| 69**夜色精品国产69乱| 欧美一级黑人aaaaaaa做受| 九九精品在线观看| 日韩av影院在线观看| 亚洲视频在线看| 亚洲精品视频在线播放| 国内精品久久久久久久| 亚洲精品久久久久久久久久久| 在线精品国产欧美| 日韩在线播放视频| 日韩精品中文字幕在线观看| 亚洲欧美在线免费观看| 91精品国产91久久久| 国产在线精品一区免费香蕉| 国产精品视频大全| 九九九热精品免费视频观看网站| 国产精品午夜一区二区欲梦| 中文在线资源观看视频网站免费不卡| 色久欧美在线视频观看| 日韩美女在线播放| 亚州精品天堂中文字幕| 国产精品日韩在线| 精品国产美女在线| 欧美日韩免费网站| 国产成人综合精品| 久久久久久久国产精品视频| 久久激情视频久久| 亚洲欧美另类在线观看| 韩国福利视频一区| 欧美成年人视频| 日韩亚洲精品电影| 日韩色av导航| 永久免费看mv网站入口亚洲| 亚洲香蕉伊综合在人在线视看| 久久夜色精品国产亚洲aⅴ| 日韩欧美极品在线观看| 高清欧美电影在线| 日韩高清免费观看| 亚洲深夜福利在线| 一区二区亚洲欧洲国产日韩| 国产网站欧美日韩免费精品在线观看| 亚洲专区中文字幕| 97视频在线观看免费| 久久人人97超碰精品888| 亚洲va久久久噜噜噜久久天堂| 国产日本欧美视频| 久久国产精品影片| 萌白酱国产一区二区| 成人在线精品视频| 亚洲级视频在线观看免费1级| 国产精品日韩在线播放| 久热精品视频在线观看一区| 国产精品白嫩初高中害羞小美女| 日韩av影视在线| 日韩av在线免播放器| 亚洲黄色免费三级| 国产精品免费福利| 欧洲精品久久久| 日韩国产精品亚洲а∨天堂免| 国产成人精品久久亚洲高清不卡| 免费91麻豆精品国产自产在线观看| 精品国产欧美成人夜夜嗨| 在线日韩av观看| 亚洲黄页视频免费观看| 亚洲第一精品久久忘忧草社区| 91日本视频在线| 国内成人精品一区| 亚洲va欧美va在线观看| 欧美电影免费观看电视剧大全| 国产日韩欧美中文在线播放| 国产精品视频99| 欧美激情小视频| 久久精品国产一区二区三区| 日韩精品中文字| 国产亚洲精品美女久久久久| 欧美日韩国产一区二区三区| 中文字幕亚洲综合| 精品中文字幕视频| 国产成人精品日本亚洲| 成人黄色影片在线| 日韩精品极品在线观看| 久久精品国产一区| 91精品久久久久久久久中文字幕| 91在线精品视频| 国产成人一区二| 91av在线免费观看视频| 久久精品久久精品亚洲人| 亚洲一区二区三区在线免费观看| 亚洲黄一区二区| 成人欧美一区二区三区黑人| 欧美日韩精品二区| 亚洲精品久久久久久久久久久| 欧美精品videofree1080p| 国产欧美在线观看| 日韩黄色高清视频| 欧美日韩中文字幕日韩欧美| 精品自拍视频在线观看| 韩国精品美女www爽爽爽视频| 亚洲淫片在线视频| 亚洲一区二区久久| y97精品国产97久久久久久| 欧美黑人又粗大| 国产精品一区二区三| 菠萝蜜影院一区二区免费| 精品五月天久久| 国产激情久久久久| 久久精品国产69国产精品亚洲| 欧美黄网免费在线观看| 成人欧美一区二区三区黑人孕妇| 国产欧美日韩亚洲精品| 欧美国产日本在线| 伦伦影院午夜日韩欧美限制| 成人黄色在线播放| 亚洲精品欧美日韩专区| 欧美精品久久久久久久|