跳到主要内容

代码行数统计

统计代码总行数/注释/空行/有效代码

按行统计:空行、注释行(// # ; /* */ <!-- --> 及文档字符串)、代码行。本地统计,不上传。

为什么需要统计代码行数

看项目规模、写周报「这周写了 2000 行」、估算评审工作量、或者单纯好奇「这文件到底多少有效代码」,都需要行数统计。但 wc -l 只给总行数,分不清注释、空行和真代码。

本工具把源码按「总行 / 代码 / 注释 / 空行」拆开统计,自动识别常见注释语法,粘贴即出。

概念与公式

行数分类(按行,可重叠归属):

  • 总行:文件所有行(含末尾换行前的每一行)。
  • 空行:去除首尾空白后为空。
  • 注释行:整行或行尾的注释,依语言而定。

支持注释语法:

  • 行注释://#;(依语言启发式,取最常见组合)。
  • 块注释:/* ... */、HTML <!-- -->、Python/JS 文档字符串 """..."""

统计是逐行扫描 + 块注释状态机,不编译、不执行代码。注意:它衡量「体量」而非「质量」。

细分场景

  • 项目汇报:给领导/客户一个规模数字。
  • 评审预估:行数多的 PR 重点看。
  • 自查膨胀:发现注释占比异常高可能意味着代码该重构。

怎么用本工具

把源码贴入输入框(可指定语言或自动识别),结果即时显示四类行数及占比条。支持多语言启发式识别常见注释风格。

常见场景与实例

例:JS 片段

// 计数器
function count() {   /* 主体 */
  return 1; // 返回
}

统计为:代码 3 行、注释 2 行、空行 0 行、总行 5 行(行尾注释计入注释)。

相关工具:提交信息生成变更日志生成

隐私说明

全程浏览器本地计算,不联网、不上传你粘贴的源码。

常见问题

注释行怎么判定?
按所选语言的注释语法:如 //(JS/Go/Java/C)、#(Python/Shell/SQL)、/* */(块注释,按起止行计)。一行里代码后跟 // 注释记为「代码行」而非纯注释,判定偏宽松。
支持哪些语言?
内置 JS/TS、Python、Java、C/C++、Go、HTML、CSS、SQL、Shell(bash) 的注释规则,可在下拉切换;未列出语言按「通用」处理(仅分空行/非空行)。
块注释跨多行怎么算?
从 /* 到 */ 之间的每一行计为注释行,即使中间夹着空行也归到注释区间,避免把块注释里的空行错算成代码。
这和 cloc 工具结果一致吗?
思路一致(分代码/注释/空行),但本工具是轻量启发式,对极少数边界写法(如字符串内的 //)可能与 cloc 略有出入,日常统计足够。