JavaScript オブジェクトの 3 つのプロパティ

JavaScript オブジェクトの 3 つのプロパティ

オブジェクトの特性:

1. 書き込み可能: 書き込み可能

writable 、プロパティの値が設定可能かどうかを示します。

obj = {年齢:10}とします
obj.age = 1 // プロパティを再割り当て console.log(obj.age) //1

2. 列挙可能: 列挙可能

enumerable属性は、プロパティ名をfor/inループで返すことができるかどうかを示します。デフォルトでは、所有プロパティと継承プロパティの両方を列挙できます。

obj = {name:"zhang", age:20, sex:"男性"}とします

newObj = Object.create(obj) とします。
新しいオブジェクトの高さ = 200

for(p in newObj){
    console.log(p,"->", newObj[p])
}

出力:

高さ -> 200
名前 -> 張
年齢 -> 20
性別 -> 男性

3. 設定可能: 設定可能

configurable 、属性がdeleteによって削除できるかどうかを示します。

obj = {name:"jim"} とします

delete obj.name // 削除後、プロパティは存在しなくなります console.log(obj.name) //undefined

オブジェクト自身の属性の上記の 3 つのプロパティは、デフォルトで true になります。これらの特性のデフォルト値を変更する場合は、 Object.defineProperty()メソッドを使用できます。 defineProperty 、オブジェクト、変更するプロパティ名、および機能値オブジェクトの 3 つのパラメータを受け取ります。

たとえば、性別プロパティの書き込み可能プロパティを false に設定する場合は、defineProperty() メソッドを使用してこれを実行できます。

obj = {name:"zhang", age:20, sex:"男性"}とします
Object.defineProperty(obj, "性別", {書き込み可能:false})
obj.sex = "女性"
console.log(obj.sex) // 男性

writablefalseに設定した後、性別属性が女性に再割り当てされても、その値は男性のままです。同様の操作を使用して、属性の列挙可能および構成可能な特性を構成することができます。

これで、JavaScript オブジェクトの 3 つのプロパティ特性に関するこの記事は終了です。JavaScript オブジェクトのプロパティ特性に関するより関連性の高いコンテンツについては、123WORDPRESS.COM の以前の記事を検索するか、次の関連記事を引き続き参照してください。今後とも 123WORDPRESS.COM をよろしくお願いいたします。

以下もご興味があるかもしれません:
  • AngularJSループオブジェクトプロパティで動的列を実装するアイデアの詳細な説明
  • JavaScriptはオブジェクトの不要なプロパティを削除します
  • springboot post インターフェースが json を受け入れる場合、それがオブジェクトに変換されると、プロパティはすべて null になります。
  • JS でオブジェクト プロパティを簡単にトラバースするいくつかの方法
  • JavaScript でオブジェクトのプロパティを削除する方法
  • js 属性オブジェクトの hasOwnProperty メソッドの使用
  • JS hasOwnProperty() メソッドは、プロパティがオブジェクト自身のプロパティであるかどうかを検出します。
  • 例を通して JavaScript の Date オブジェクトのプロパティとメソッドを解析する
  • Java オブジェクトを JSON に変換する際のプロパティの動的な追加、削除、変更、クエリの詳細な説明
  • オブジェクトをJSONに変換する場合、Java jacksonはサブオブジェクトのプロパティ操作を無視します。

<<:  HTML で div を非表示にする テーブルを非表示にする TABLE または DIV コンテンツの CSS スタイル

>>:  デザイン: 意志の強いデザイナー

推薦する

CentOS IP接続ネットワーク実装プロセス図

1. システムにログインし、ディレクトリに入ります: cd /etc/sysconfig/netwo...

Dockerがコンテナサービスを停止または削除できない問題の解決策

序文今日、開発者から、コンテナ サービスを停止、rm (docker rm -f)、または強制終了で...

Vue のルータールーティングの 2 つのモード (ハッシュと履歴) の詳細な説明

ハッシュモード(デフォルト)動作原理:ウェブページのハッシュ値の変化を監視する—> onhas...

JavaScript で 2 次元配列を作成するためのヒント

Js での 2 次元配列の作成:まず、JavaScript は 1 次元配列のみをサポートしています...

docker-maven-pluginプラグインは対応するjarパッケージを取得できません

docker-maven-plugin プラグインを使用する場合、Maven は対応する jar パ...

CSSはクーポンスタイルを実装するために放射状グラデーションを使用します

この記事では、CSS で放射状グラデーションを使用して、次の図に示すクーポン スタイルの効果を実現す...

jQueryカルーセル機能を実装する方法

この記事では、jQueryカルーセル機能の実装コードを参考までに共有します。具体的な内容は次のとおり...

MySQLクエリプランでken_lenの値を計算する方法

key_lenの意味MySQL では、次に示すように、explain を使用して SQL ステートメ...

Web Storage APIの使用に関する簡単な説明

目次1. ブラウザのローカルストレージ技術1.1、セッションストレージ1.2、ローカルストレージ2....

MYSQL updatexml() 関数のエラーインジェクション分析

まず、updatexml()関数を理解する UPDATEXML (XML ドキュメント、XPath ...

MySQL パーティション関数の詳細な説明と例の分析

まず、データベース パーティショニングとは何でしょうか?以前、MySQL のテーブル パーティショニ...

Vue3のdefineComponentの役割についての簡単な説明

目次defineComponent オーバーロード関数開発実務defineComponent 関数は...

ドラッグ可能なログインボックスを実現するネイティブJS

この記事では、ネイティブ JS で実装されたドラッグ可能なログイン ボックスを紹介します。その効果は...

Iframe の内外のページで JS がどのように動作するかの概要

目次iframeの外側のiframeのコンテンツを取得する方法1方法2 iframe 内の ifra...

CSS3 で King of Glory マッチング人員読み込みページを実装する方法

King of Glory をプレイしたことがある人なら、このページの効果をよくご存知でしょう。なぜ...