isProxy() Check Whether a Value Is a Proxy
Last updated: 2026-10-22
isProxy() Check Whether a Value Is a Proxy
isProxy() reports whether a value is a proxy created by reactive() or readonly().
| Group | Reactivity: Utilities |
|---|---|
| Kind | API |
| Scope | Component |
| Vue Version | 3.0+ |
| SSR Support | Yes |
📝 Syntax
isProxy(reactive({})) // true
isProxy(readonly({})) // true
isProxy(ref(1)) // false
⚙️ Arguments
| value | Any value |
|---|
Returns:Boolean
▶ Example
Edit the code below and see the live result:
Output:
Shows 'reactive is a proxy: true, readonly is a proxy: true'.
💡 Key Points
ℹ️ Note isReactive matches writable proxies, isReadonly readonly ones; isProxy matches both.
💡 Tip Combine isProxy with isRef to test reactivity in general.
🏷️ Related Utilities
💡 Related Cases
More case studies coming soon.
📚 Related Tutorials
❓ FAQ
Q Is a ref a proxy?
A No — a ref is its own wrapper; isProxy(ref(1)) is false.
Q Where is this used in practice?
A In libraries or debugging to distinguish plain from reactive objects.
Q Same as instanceof Proxy?
A No — proxies cannot be detected via instanceof; use Vue's helpers.