Movatterモバイル変換


[0]ホーム

URL:


  1. 開発者向けのウェブ技術
  2. JavaScript
  3. JavaScript リファレンス
  4. 標準組み込みオブジェクト
  5. Reflect
  6. Reflect.set()

このページはコミュニティーの尽力で英語から翻訳されました。MDN Web Docsコミュニティーについてもっと知り、仲間になるにはこちらから。

View in EnglishAlways switch to English

Reflect.set()

Baseline Widely available

This feature is well established and works across many devices and browser versions. It’s been available across browsers since ⁨2016年9月⁩.

静的なReflect.set() メソッドは、オブジェクトにプロパティを設定するかのように動作します。

試してみましょう

const object1 = {};Reflect.set(object1, "property1", 42);console.log(object1.property1);// Expected output: 42const array1 = ["duck", "duck", "duck"];Reflect.set(array1, 2, "goose");console.log(array1[2]);// Expected output: "goose"

構文

Reflect.set(target, propertyKey, value[, receiver])

引数

target

プロパティを設定する対象のオブジェクト。

propertyKey

設定するプロパティ名。

value

設定する値。

receiver省略可

セッターによってtarget が呼び出されたときのthis 値を提供する。

返値

プロパティが成功裏に設定できたかどうかを示すBoolean 値。

例外

TypeError:targetObject ではなかった場合。

解説

Reflect.set メソッドは、オブジェクトにプロパティを設定します。これはプロパティの割り当てを行い、機能としてはプロパティアクセサー 構文のようなものです。

Reflect.set() の使用

js
// オブジェクトlet obj = {};Reflect.set(obj, "prop", "value"); // trueobj.prop; // "value"// 配列let arr = ["duck", "duck", "duck"];Reflect.set(arr, 2, "goose"); // truearr[2]; // "goose"// 配列を切り詰められる。Reflect.set(arr, "length", 1); // truearr; // ["duck"]// 引数が1つだけだと、プロパティキーと値は "undefined" になる。let obj = {};Reflect.set(obj); // trueReflect.getOwnPropertyDescriptor(obj, "undefined");// { value: undefined, writable: true, enumerable: true, configurable: true }

仕様書

Specification
ECMAScript® 2026 Language Specification
# sec-reflect.set

ブラウザーの互換性

関連情報

Help improve MDN

Learn how to contribute

This page was last modified on byMDN contributors.


[8]ページ先頭

©2009-2025 Movatter.jp