Object.seal( object )メソッド

Object.seal( object )メソッドは、引数「object」に指定したオブジェクトの既存プロパティの設定変更、既存プロパティの削除、新プロパティ追加を封印するメソッド。既存プロパティの値は、writable属性(書き込み属性)が「true」であれば、変更できる。

構文

Object.seal( object )

引数

object
既存プロパティの設定変更、既存プロパティの削除、新プロパティ追加を封印したいオブジェクトを指定。

戻り値

引数「object」に指定したオブジェクト。

サンプル

<script type="text/javascript">

var $sampleObjectA = {
    $samplePropA: 'サンプルA',
    $samplePropB: 'サンプルB',
};

document.write(
    'Object.isExtensible( $sampleObjectA ): '
    + Object.isExtensible( $sampleObjectA )
    + '<br />'
);

document.write(
    'Object.isSealed( $sampleObjectA ): '
    + Object.isSealed( $sampleObjectA )
    + '<br />'
);

document.write(
    'Object.isFrozen( $sampleObjectA ): '
    + Object.isFrozen( $sampleObjectA )
    + '<br />'
);

document.write( '<br />' );

Object.seal( $sampleObjectA );

document.write(
    'Object.isExtensible( $sampleObjectA ): '
    + Object.isExtensible( $sampleObjectA )
    + '<br />'
);

document.write(
    'Object.isSealed( $sampleObjectA ): '
    + Object.isSealed( $sampleObjectA )
    + '<br />'
);

document.write(
    'Object.isFrozen( $sampleObjectA ): '
    + Object.isFrozen( $sampleObjectA )
    + '<br />'
);

document.write( '<br />' );

// プロパティの追加を試みる
$sampleObjectA.$samplePropC = 'サンプルC';
document.write( '$sampleObjectA.$samplePropC:' + $sampleObjectA.$samplePropC + '<br />' );

// プロパティの削除を試みる
delete $sampleObjectA.$samplePropA;
document.write( '$sampleObjectA.$samplePropA:' + $sampleObjectA.$samplePropA + '<br />' );

// プロパティの変更を試みる
$sampleObjectA.$samplePropB = 'さんぷる②';
document.write( '$sampleObjectA.$samplePropB:' + $sampleObjectA.$samplePropB + '<br />' );

</script>

↓↓↓出力結果↓↓↓

スポンサード リンク

カテゴリー: JavaScript, Objectオブジェクト, メソッド, リファレンス, 組み込みオブジェクト タグ: パーマリンク