looseEqual() — vue Function Reference
Architecture documentation for the looseEqual() function in util.ts from the vue codebase.
Entity Profile
Dependency Diagram
graph TD e93f627f_dac8_be53_5ccd_05c8b2c72e2d["looseEqual()"] b7977953_caa1_d867_207c_74cfbf6421e0["util.ts"] e93f627f_dac8_be53_5ccd_05c8b2c72e2d -->|defined in| b7977953_caa1_d867_207c_74cfbf6421e0 aba0da38_1262_d53c_f39d_9081610fab31["looseIndexOf()"] aba0da38_1262_d53c_f39d_9081610fab31 -->|calls| e93f627f_dac8_be53_5ccd_05c8b2c72e2d 6c50c697_3e50_26c1_85ed_ce95cf6e8b72["isObject()"] e93f627f_dac8_be53_5ccd_05c8b2c72e2d -->|calls| 6c50c697_3e50_26c1_85ed_ce95cf6e8b72 style e93f627f_dac8_be53_5ccd_05c8b2c72e2d fill:#6366f1,stroke:#818cf8,color:#fff
Relationship Graph
Source Code
src/shared/util.ts lines 305–344
export function looseEqual(a: any, b: any): boolean {
if (a === b) return true
const isObjectA = isObject(a)
const isObjectB = isObject(b)
if (isObjectA && isObjectB) {
try {
const isArrayA = Array.isArray(a)
const isArrayB = Array.isArray(b)
if (isArrayA && isArrayB) {
return (
a.length === b.length &&
a.every((e: any, i: any) => {
return looseEqual(e, b[i])
})
)
} else if (a instanceof Date && b instanceof Date) {
return a.getTime() === b.getTime()
} else if (!isArrayA && !isArrayB) {
const keysA = Object.keys(a)
const keysB = Object.keys(b)
return (
keysA.length === keysB.length &&
keysA.every(key => {
return looseEqual(a[key], b[key])
})
)
} else {
/* istanbul ignore next */
return false
}
} catch (e: any) {
/* istanbul ignore next */
return false
}
} else if (!isObjectA && !isObjectB) {
return String(a) === String(b)
} else {
return false
}
}
Domain
Subdomains
Defined In
Calls
Called By
Source
Frequently Asked Questions
What does looseEqual() do?
looseEqual() is a function in the vue codebase, defined in src/shared/util.ts.
Where is looseEqual() defined?
looseEqual() is defined in src/shared/util.ts at line 305.
What does looseEqual() call?
looseEqual() calls 1 function(s): isObject.
What calls looseEqual()?
looseEqual() is called by 1 function(s): looseIndexOf.
Analyze Your Own Codebase
Get architecture documentation, dependency graphs, and domain analysis for your codebase in minutes.
Try Supermodel Free