🍋
Menu
General

Diff

Diff(差异比较)

一种比较操作,用于识别文本、代码或数据的两个版本之间的具体差异,精确显示它们之间添加、删除或更改的内容。

技术细节

经典 diff 算法(Hunt-McIlroy,后来的 Myers)计算最长公共子序列 (LCS) 并将差异呈现为最小编辑脚本。输出格式包括统一 diff(带 +/- 行的上下文,Git 使用)、并排显示以及单词级或字符级 diff 以提供更细的粒度。三向 diff 将一个基础版本与两个修改版本进行比较以实现自动合并。在 Web 工具中,diff-match-patch 或 jsdiff 等库可在客户端执行可自定义粒度的文本比较。

示例

```javascript
// Diff: file processing example
const file = document.getElementById('fileInput').files[0];
const reader = new FileReader();
reader.onload = (e) => {
  const data = e.target.result;
  console.log(`Loaded: ${file.name} (${file.size} bytes)`);
};
reader.readAsArrayBuffer(file);
```

相关工具

相关术语