1. JavaScript オブジェクトの概要
1. オブジェクトとは何ですか?オブジェクトはプログラム内のオブジェクトであり、プログラムは現実の世界を記述するために使用されます。 たとえば、全員の情報を管理するプログラムを書きたい場合、ここに全員の情報 (身長、体重など) を配置する必要があります。この情報を効率的に管理するには、この情報を配置する必要があります。で管理されるコンテナ(オブジェクト)内。
概要:
* は現実のものを表し、プログラミングにおけるそのものの抽象化です (データ、参照データ型)
* 複数のデータのコレクション (カプセル化)
* はコンテナを保存するために使用されます複数のデータ
2. オブジェクトを使用する理由
複数のデータの一元管理が容易になります
3. オブジェクトの構成(属性+メソッド)
*属性:
*実物のステータスデータを表します
*属性名と属性値で構成されます
*属性name 全て文字列型で、属性値は任意の型です
*メソッド
*現実の物の動作データを表します
*メソッドは特殊な属性です(属性値が関数の場合)
const p={ name:'tom',//属性:属性值不是函数 setName:function (name){//方法:属性值为函数------这个也是属性 this.name=name; }, 'age':23,//属性名是字符串'age'或是‘setAge’ 'setAge':function(age){ this.age=age; } } console.log(p.setName('jack'),p.name);//undefined "jack" p['setAge'](34);//这是函数 console.log(p['age']);//34
4.内部オブジェクトのデータにアクセスするにはどうすればよいですか?
* .属性名: 簡単なコーディング。ただし、使えない場合もあります
*['属性名']: エンコードは面倒ですが、汎用です(この設定パラメータを使用する場合、アクセスもこのようにする必要があることに注意してください)
eg:b={ 'a':3}/b =['a']-----a> は変数ではなく文字列です
b[a]=3------>この a は変数です
5. [' 属性を名前'] で使用する必要があるのはどのような場合ですか?
a. 属性名に特殊文字が含まれている (コンテンツタイプなど)
b. 属性名が不確かである (属性名が変数である)
var obj={}; //给对象添加一个属性:'content-type':'text/json' //obj.content-type='text/json';//报错了,有横杆不是合法标识名 obj['content-type']='text/json'; console.log(obj['content-type']); //要对象添加一个属性,但是属性名不确定(不确定的东西要定义成变量) var propName='my name'; var value='jack'; //obj.propName=value; //console.log(obj)//obj={propName:'jack'} //obj.propName不能用这个,因为想要的属性名是my name而不是propName,所以要用obj['propName']=value; obj[propName]=value; console.log(obj['propName']) console.log(obj)//obj={'my name':'jack'}
6. クラスとオブジェクトの関係
オブジェクトはクラスから生成されます。オブジェクトはクラスのインスタンスです(月餅や月餅型など)
7. オブジェクトが特定のクラス
のオブジェクトインスタンスに属しているかどうかを確認します
8. を作成します。オブジェクト型 object
作成方法: new class name ( ); //このオブジェクトの作成方法はどの型でも共通です。例: var obj = new Object();
Object タイプのオブジェクトを作成するための短縮方法: var obj = {};
(2) 属性を追加または変更します:
Object.Attribute name = data;
方法 2:
Object ["Attribute Name"] = data; //角括弧は文字列または文字列を格納する変数である必要があります
(3)。 検索
方法 1:
Object.Attribute Name;
方法 2:
Object ["Attribute name"];
(4). 属性を削除します:
メソッド 1:
delete Object.Attribute name //ブール値を返します。true は削除が成功したことを意味します
メソッド 2:
オブジェクトを削除します。 name" ];//ブール値を返します。trueは削除が成功したことを意味します
(5)。オブジェクトに特定の属性が存在するかどうかを検出します
Object.hasOwnProperty("property name"); //存在する場合はtrueを返しますそれ以外の場合は false を返します
( 6) Object 型のオブジェクトにキーと値のペアを追加する 2 番目の方法:
var obj = {属性名: data, 属性名: data, 属性名: data...};
2. Liezi
1 .console.log(a[obj1]) の出力はどれくらいですか?
var a={}; var obj1={n:2}; var obj2={n:3} a[obj1]=4; a[obj2]=5; console.log(a[obj1])//输出5 // console.log(a)知道属性名是[object Object] ,通过这个想到对象的属性名都是字符串,对象如果转换字符串:是obj.toString(),这个是固定的方法,返回的[object Object] ,所以obj1,obj2返回是一样属性名[object Object] 。所以a[obj2]是对a[obj1]的覆盖
JavaScript オブジェクトの残りの属性とスプレッド属性を変更する方法
以上がJavaScriptオブジェクトの詳しい説明の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。