成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

不要過度使用console.log啦!我們有更好的調試方式!

開發 前端
毫無疑問,console.log 是一個很好的調試方式。但是 如果我們濫用它,效果反而會適得其反!大量打印信息堆積如山,反倒使得我們難以理清各條輸出的對應邏輯!

Hello,大家好,我是 Sunday。

在日常的工作中,我經常會幫同學【遠程調試代碼】。在遠程時,我發現 很多同學會大量使用 console.log 進行打印調試。打印的數量之多,讓同學自己都摸不清哪個打印對應哪個內容了??。

毫無疑問,console.log 是一個很好的調試方式。但是 如果我們濫用它,效果反而會適得其反!大量打印信息堆積如山,反倒使得我們難以理清各條輸出的對應邏輯!

因此,我們可以尋找可好的調試方案,來解決 console.log 過多而導致的混亂問題。

console 不止 log

沒錯!console 不止 log ,console 對象內部提供了很多的方法。使用更多的 console 方法配合可以幫助我們大幅提升調試的效率。

1. 使用 console.dir() 打印對象

console.dir() 是一個專門打印 對象 的 API。

console.dir() 方法可以顯示指定 JavaScript 對象的屬性列表,并以交互式的形式展現。輸出結果呈現為分層列表,包含展開/折疊的三角形圖標,可用于查看子對象的內容。

因此,當我們打印對象時,可以使用 dir 代替 log

2. 使用 console.table() 打印數組

如果想要打印數組的話,那么 table() 是首選方法:

const users = [
    { id: 1, name: '張三', age: 25 },
    { id: 2, name: '李四', age: 30 },
    { id: 3, name: '王五', age: 35 },
];

console.table(users);

一句話:賊清晰!

圖片圖片

3. 使用 console.clear() 清理控制臺

這個 API 可以幫我們解決控制臺打印過多的問題。

如果我們要開啟一輪新的調試,那么可以在開始前執行 console.clear(),清空之前的控制臺打印。

這樣,可以幫我們更加專注的針對本次的調試,而不需要被之前的打印信息所誤導!

4. 使用 console.group() 控制打印組

這在 嵌套函數、遞歸 中非常有用,配合 console.groupEnd() 可以幫助我們完成分組打印。

比如下面的場景:

function factorial(n) {
    console.group(`方法開始,長度(${n})`);
    if (n <= 1) {
        console.log("執行 1");
        console.groupEnd();
        return 1;
    } else {
        let result = n * factorial(n - 1);
        console.log(`執行 ${result}`);
        console.groupEnd();
        return result;
    }
}

factorial(3);

最終,打印結果如下:

圖片圖片

5. 使用 console.time() 完成計時

console.time() 配合 console.timeEnd() 經常用來處理 計時操作。

比如,我們想要測試一個函數的執行耗時,那么就可以通過這種方式完成:

function processLargeData() {
    console.time("time");
    // 模擬耗時操作
    for (let i = 0; i < 1000000; i++) {
        Math.sqrt(i);
    }
    console.timeEnd("time");
}

processLargeData();

計時結果如下:

圖片 圖片

責任編輯:武曉燕 來源: 程序員Sunday
相關推薦

2023-08-31 09:10:18

JavaScript調試

2018-01-26 10:42:44

前端JavascriptConsole對象

2023-02-24 08:00:00

2024-03-18 07:56:49

CSSJS代碼調試

2021-03-17 08:53:21

JavaScript開發代碼

2024-04-08 11:42:14

代碼console開發

2025-02-14 11:04:07

JavaScript開發函數

2022-08-22 08:32:17

招聘函數string

2020-01-09 08:26:16

代碼JS開發

2024-04-15 00:00:00

console語法樹AST

2025-04-08 08:25:00

前端埋點線程

2020-03-25 08:26:44

console.log前端

2022-03-01 07:37:30

MySQL場景框架

2017-09-12 15:11:12

Chrome

2021-09-07 07:53:43

Console函數DOM

2025-01-06 05:20:00

前端開發定位

2019-04-04 14:05:20

consolejs前端

2012-03-21 10:09:12

2023-07-27 15:04:10

Node.js核心API

2021-03-29 11:58:28

CentOSvDebian 10Linux
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 99免费看| 国产97久久 | 日本不卡一区二区三区在线观看 | 国产精品网页 | 久久久精品一区 | av大片在线| 亚洲+变态+欧美+另类+精品 | 亚洲一区二区中文字幕 | 毛片免费观看 | 黑人巨大精品 | 国产精品免费一区二区 | 亚洲一区二区三区视频 | 久久国产综合 | 视频一区二区三区四区五区 | 欧美一区二区三区在线观看 | 日韩电影一区 | 91久久精品国产免费一区 | 黄网站免费在线看 | 在线看无码的免费网站 | 丁香综合| 一级黄色绿像片 | 日本成人二区 | 成人不卡| 国产精品色一区二区三区 | 男人的天堂在线视频 | 成人一区二区视频 | 欧美国产日韩精品 | 手机看片169 | 精品9999| 天堂色| 精品视频一区二区三区在线观看 | 国产999精品久久久 精品三级在线观看 | 成人av网站在线观看 | 日韩精品久久一区二区三区 | 日韩欧美三级 | 亚洲综合色网 | www.性色| 98成人网| 一级在线毛片 | 一级片在线观看 | 午夜影院在线 |