• Performs a deep comparison between two values to determine if they are equivalent.

    This function recursively compares objects and arrays, checking that all nested properties and elements are equal. Handles null/undefined values, primitive types, arrays, and plain objects.

    Parameters

    • value: unknown

      The value to compare.

    • other: unknown

      The other value to compare.

    Returns boolean

    Returns true if the values are equivalent, else false.

    import { isEqual } from './AcCmLodashUtils'

    isEqual(1, 1) // true
    isEqual('hello', 'hello') // true
    isEqual([1, 2], [1, 2]) // true
    isEqual({ a: 1 }, { a: 1 }) // true
    isEqual([1, 2], [2, 1]) // false
    isEqual({ a: 1 }, { a: 2 }) // false

    // Deep comparison
    const obj1 = { a: { b: 1 } }
    const obj2 = { a: { b: 1 } }
    isEqual(obj1, obj2) // true