Skip to content

devDeepEqual 深度比较两个值是否相等

devDeepEqual 是一个深度比较工具函数,用于判断两个值在结构上是否完全相等,支持所有常见数据类型(包括数组、对象、日期、正则等)。 该函数在判断复杂嵌套结构时非常实用,能有效替代 JSON.stringify 的浅层比较方式。

  • ✅ 支持基本数据类型比较:字符串、数字、布尔、null、undefined 等
  • ✅ 支持特殊对象比较:Date、RegExp
  • ❌ 不支持比较 Function、Symbol(默认视为不相等)

使用示例

ts
import {devDeepEqual} from "devecoui-plus"

devDeepEqual(1, 1)                        // true

devDeepEqual([1, 2], [1, 2])              // true

devDeepEqual({ a: 1 }, { a: 1 })          // true

devDeepEqual({ a: [1, 2] }, { a: [1, 2] })// true

devDeepEqual(null, undefined)            // false

devDeepEqual(new Date(0), new Date(0))   // true

devDeepEqual(/a/i, new RegExp('a', 'i'))  // true

devDeepEqual({ a: 1 }, { a: 1, b: 2 })    // false