Movatterモバイル変換


[0]ホーム

URL:


  1. Web
  2. JavaScript
  3. Reference
  4. JavaScript error reference
  5. TypeError: can't set prototype: it would cause a prototype chain cycle

TypeError: can't set prototype: it would cause a prototype chain cycle

The JavaScript exception "TypeError: can't set prototype: it would cause a prototype chain cycle" occurs when an object's prototype is set to an object such that theprototype chain becomes circular (a andb both have each other in their prototype chains).

Message

TypeError: Cyclic __proto__ value (V8-based)TypeError: can't set prototype: it would cause a prototype chain cycle (Firefox)TypeError: cyclic __proto__ value (Safari)

Error type

TypeError

What went wrong?

A loop, also called a cycle, was introduced in a prototype chain. That means that when walking this prototype chain, the same place would be accessed over and over again, instead of eventually reachingnull.

This error is thrown at the time of setting the prototype. In an operation likeObject.setPrototypeOf(a, b), ifa already exists in the prototype chain ofb, this error will be thrown.

Examples

js
const a = {};Object.setPrototypeOf(a, a);// TypeError: can't set prototype: it would cause a prototype chain cycle
js
const a = {};const b = {};const c = {};Object.setPrototypeOf(a, b);Object.setPrototypeOf(b, c);Object.setPrototypeOf(c, a);// TypeError: can't set prototype: it would cause a prototype chain cycle

See also

Help improve MDN

Learn how to contribute

This page was last modified on byMDN contributors.


[8]ページ先頭

©2009-2025 Movatter.jp