A RetroSearch Logo

Home - News ( United States | United Kingdom | Italy | Germany ) - Football scores

Search Query:

Showing content from http://developer.mozilla.org/ja/docs/Web/JavaScript/Reference/Global_Objects/Reflect/setPrototypeOf below:

Reflect.setPrototypeOf() - JavaScript | MDN

Reflect.setPrototypeOf()

Baseline Widely available

静的な Reflect.setPrototypeOf() メソッドは、返値を除いて、 Object.setPrototypeOf() と同じメソッドです。これは指定されたオブジェクトのプロトタイプ (つまり、内部の [[Prototype]] プロパティ) にほかのオブジェクト、または null を設定し、操作が成功したなら true を、そうでないなら false を返します。

試してみましょう
const object1 = {};

console.log(Reflect.setPrototypeOf(object1, Object.prototype));
// Expected output: true

console.log(Reflect.setPrototypeOf(object1, null));
// Expected output: true

const object2 = {};

console.log(Reflect.setPrototypeOf(Object.freeze(object2), null));
// Expected output: false
構文
Reflect.setPrototypeOf(target, prototype)
引数
target

プロトタイプを設定する対象のオブジェクトです。

prototype

オブジェクトの新しいプロトタイプ (オブジェクトまたは null) です。

返値

プロトタイプが正常に設定されたかどうかを示す Boolean 値です。

例外

TypeError: target が Object ではない場合、または prototype がオブジェクトでも null でもない場合。

解説

Reflect.setPrototypeOf メソッドは、指定されたオブジェクトのプロトタイプ (つまり、内部の [[Prototype]] プロパティ) を変更します。

例 Reflect.setPrototypeOf() の使用
Reflect.setPrototypeOf({}, Object.prototype); // true

// オブジェクトの [[Prototype]] は null に変更できる。
Reflect.setPrototypeOf({}, null); // true

// 対象が拡張できない場合、false を返す。
Reflect.setPrototypeOf(Object.freeze({}), null); // false

// プロトタイプチェーンが循環する場合、false を返す。
let target = {};
let proto = Object.create(target);
Reflect.setPrototypeOf(target, proto); // false
仕様書 ブラウザーの互換性 関連情報

RetroSearch is an open source project built by @garambo | Open a GitHub Issue

Search and Browse the WWW like it's 1997 | Search results from DuckDuckGo

HTML: 3.2 | Encoding: UTF-8 | Version: 0.7.4