前端打斷點(diǎn)debugger使用流程詳細(xì)教程
流程1:打上斷點(diǎn)
方式一:編輯器內(nèi)
在一行代碼的前面或者后面寫上debugger
運(yùn)行到這的時(shí)候就會(huì)停止啦
方式二:瀏覽器控制臺(tái)內(nèi)
直接在控制臺(tái)的source(中文版為源代碼/來源)
目錄下點(diǎn)擊左邊的行數(shù)即可
然后刷新一下
流程2:遇上斷點(diǎn)
遇到斷點(diǎn)后,程序會(huì)停止運(yùn)行,此時(shí)注意,控制器里打斷點(diǎn)的那行代碼并沒有被執(zhí)行,
第一個(gè)按鈕是一直執(zhí)行到下一個(gè)斷點(diǎn)的意思,直到運(yùn)行完畢
第二個(gè)按鈕是進(jìn)行下一步,也就是執(zhí)行下一個(gè)邏輯,又或者說,【按邏輯(比如會(huì)遇到 if 那些)去執(zhí)行下一行代碼】。
- 箭頭:停止斷點(diǎn)調(diào)試
- 眼睛:不跳入函數(shù)中去,繼續(xù)執(zhí)行下一行代碼(F10)
- 向下的箭頭:跳入函數(shù)中去(F11)
- 向上的箭頭:從執(zhí)行的函數(shù)中跳出
- 帶斜杠的圖標(biāo):禁用所有的斷點(diǎn),不做任何調(diào)試
流程3:查看變量(英文版為scope)
可以查看到不同作用域下的變量的動(dòng)態(tài)變化 ,如下圖所示,展示了代碼塊范圍內(nèi)的所有變量:
提示
提醒一句:對(duì)有異步代碼的文件進(jìn)行斷點(diǎn)時(shí)有個(gè)小提醒,可能你在斷點(diǎn)的情況下正常運(yùn)行了,但不斷點(diǎn)的情況下就不正常了,這時(shí)候就要想到異步的時(shí)機(jī)問題,可能斷點(diǎn)的時(shí)候異步就執(zhí)行完了。
補(bǔ)充
代表 “下一步(Step)”:運(yùn)行下一條指令,快捷鍵 F9。運(yùn)行下一條語句。一次接一次地點(diǎn)擊此按鈕,整個(gè)腳本的所有語句會(huì)被逐個(gè)執(zhí)行。
代表 “跨步(Step over)”:運(yùn)行下一條指令,但 不會(huì)進(jìn)入到一個(gè)函數(shù)中,快捷鍵 F10。
跟上一條命令“下一步(Step)”類似,但如果下一條語句是函數(shù)調(diào)用則表現(xiàn)不同。這里的函數(shù)指的是:不是內(nèi)建的如 alert 函數(shù)等,而是我們自己寫的函數(shù)。
如果我們對(duì)比一下,“下一步(Step)”命令會(huì)進(jìn)入嵌套函數(shù)調(diào)用并在其第一行暫停執(zhí)行,而“跨步(Step over)”對(duì)我們不可見地執(zhí)行嵌套函數(shù)調(diào)用,跳過了函數(shù)內(nèi)部。
執(zhí)行會(huì)在該函數(shù)調(diào)用后立即暫停。
如果我們對(duì)該函數(shù)的內(nèi)部執(zhí)行不感興趣,這命令會(huì)很有用。
總結(jié)
到此這篇關(guān)于前端打斷點(diǎn)debugger使用的文章就介紹到這了,更多相關(guān)前端打斷點(diǎn)debugger使用內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
es6數(shù)組的flat(),flatMap()函數(shù)用法實(shí)例分析
這篇文章主要介紹了es6數(shù)組的flat(),flatMap()函數(shù)用法,結(jié)合實(shí)例形式分析了es6數(shù)組的flat(),flatMap()函數(shù)基本功能、使用方法及操作注意事項(xiàng),需要的朋友可以參考下2020-04-04JavaScript設(shè)計(jì)模式之外觀模式介紹
這篇文章主要介紹了JavaScript設(shè)計(jì)模式之外觀模式介紹,外觀模式是用于由于子系統(tǒng)或程序組成較復(fù)雜而提供的一個(gè)高層界面接口,使用客戶端更容易訪問底層的程序或系統(tǒng)接口,需要的朋友可以參考下2014-12-12JS實(shí)現(xiàn)的字符串?dāng)?shù)組去重功能小結(jié)
這篇文章主要介紹了JS實(shí)現(xiàn)的字符串?dāng)?shù)組去重功能,結(jié)合實(shí)例形式分析了javascript基于ES6、ES5、ES3及正則實(shí)現(xiàn)數(shù)組去重的相關(guān)操作技巧,需要的朋友可以參考下2019-06-06JavaScript使用lodash實(shí)現(xiàn)命名轉(zhuǎn)換和函數(shù)封裝
Lodash?是一個(gè)?JavaScript?的工具庫(kù),它提供了一系列的函數(shù)來簡(jiǎn)化代碼編寫,本文主要為大家介紹了如何使用lodash實(shí)現(xiàn)命名轉(zhuǎn)換和函數(shù)封裝,感興趣的小伙伴可以了解下2023-11-11javascript數(shù)組中的concat方法和splice方法
這篇文章主要介紹了javascript數(shù)組中的concat方法和splice方法,concat方法作用合并數(shù)組,可以合并一個(gè)或多個(gè)數(shù)組,會(huì)返回合并數(shù)組之后的數(shù)據(jù),不會(huì)改變?cè)瓉淼臄?shù)組,更多相關(guān)內(nèi)容需要的小伙伴可以參考下面文章內(nèi)容2022-03-03javascript實(shí)現(xiàn)隨機(jī)抽獎(jiǎng)功能
這篇文章主要為大家詳細(xì)介紹了javascript實(shí)現(xiàn)隨機(jī)抽獎(jiǎng)功能,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2020-12-12