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 スタイル

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

推薦する

Vue3 ドキュメント クイックスタート

目次1. セットアップ1. セットアップ関数の最初のパラメータ - props 2. 文脈2. セッ...

Linux 7.7 でスワップ パーティション SWAP を設定する方法

Linux システムの Swap パーティション、つまり swap パーティションは、一般に仮想メモ...

Docker イメージ + nginx を使用して Vue プロジェクトをデプロイする方法

1. Vueプロジェクトのパッケージ化開発されたvueプロジェクトに次の名前を入力し、パッケージ化し...

MySQLのパスワードを忘れた場合の対処方法

MySQL パスワードを 2 回忘れてしまいましたか?最初、私はアンインストールして再インストールす...

MySQLを定期的にバックアップしてQiniuにアップロードする方法

ほとんどのアプリケーション シナリオでは、緊急時に備えて重要なデータをバックアップし、安全な場所に保...

Vue3 + TypeScript 開発の概要

目次Vue3 + TypeScript 学習1. 環境設定1.1 最新のVue scaffoldin...

Javascript の奇妙な点をご存知ですか?

私たちのベテランの先人たちは、数え切れないほどのコードを書き、数え切れないほどの落とし穴に陥ってきま...

Vueのフロントエンドとバックエンドのデータのやり取りと表示を理解する方法

目次1. 技術概要2. 技術的な詳細1. インターフェースからバックエンドデータを取得する2. フロ...

CSS3 を使用して中心点の周りに要素を配置する方法の例

この記事では、CSS3 を使用して中心点を中心に要素をレイアウトする方法の例を紹介します。詳細は次の...

WeChat アプレット wxs 日付と時刻処理の実装例

目次1. 日付までのタイムスタンプ2. UTCを北京時間に変換するWXS (WeiXin Scrip...

JavaScript es6 における var、let、const の違いの詳細な説明

まず、よくある質問は、ECMAScript と JavaScript の関係は何ですか? ECMAS...

Alibaba Cloud OSS によってアップロードされた Nginx プロキシ転送実装コード

序文ミニプログラムのアップロードには https が必要なので、サーバーの https は lets...

MySql 組み込み関数の自習知識ポイントまとめ

文字列関数文字ascii(str)のASCIIコード値をチェックし、strが空の文字列の場合は0を返...

LinuxはNetworkManagerを使用してMACアドレスをランダムに生成します

今では、自宅のソファーに座っていても、外の喫茶店にいても、ノートパソコンの電源を入れてWi-Fiに接...

JavaScript の基本演算子

目次1. オペレーター要約する1. オペレーター演算子は、代入、比較、算術演算などの機能を実装するた...