JavaScriptでのオブジェクトの使用の簡単な記録
1.オブジェクトを作成します
//空のオブジェクトを作成するvar o = {}; // 2つの属性を持つオブジェクトを作成します。xとy var o2 = {x:12、y: '12'、name: 'js'}; //このオブジェクトの著者属性の値はまだオブジェクトですvar o3 = {x:12、著者:{name: 'js'、age:23、address: 'china'}}; // {} var o4 = new object()と同じ空のオブジェクトを作成します。 //オブジェクトに名前属性を追加o4.name = 'js'上記では、オブジェクトを作成する2つの方法を使用しています。1つはリテラル方法であり、もう1つは新しい方法を使用してオブジェクトを作成することです。新しい後のオブジェクトはコンストラクターと呼ばれます。
2。オブジェクトアクセス
上記から、DOT番号、つまりオブジェクト名と属性名を使用して、対立するO4に属性名を追加したことがわかります。これはアクセスメソッドの1つです。オブジェクト内の属性値にアクセスするには、2つの方法があります。 1つ目はドット番号(。)を使用することであり、2つ目は配列(オブジェクト名[属性名])を使用することです。
//空のオブジェクトを作成するvar o = {}; // 2つの属性を持つオブジェクトを作成します、x、y var o2 = {x:12、y: '12'、name: 'js'}; //このオブジェクトの著者属性の値はまだオブジェクトですvar o3 = {x:12、著者:{name: 'js'、age:23、address: 'china'}}; // {} var o4 = new object()と同じ空のオブジェクトを作成します。 //名前属性o4.name = 'js'/**オブジェクトの属性値へのアクセス*/// 1。 Point番号Var X = O2.x; // 12 var著者authorofname = o3.author.name; // js var name = o4.name; // js // 2。 Arrayメソッドの使用var x2 = o2 ['x']; // 12 var Authorofname2 = o3 ['author'] ['name']; // js var name2 = o4 ['name']; // jsドット番号を使用してオブジェクト内の属性値にアクセスする方法を理解するのは簡単ですが、配列の使用方法を理解するのは簡単ではありません。 JavaScriptでは、すべてのオブジェクトは連想配列です。いわゆる連想データは配列にアクセスする方法ですが、この方法は使用されるインデックスではなく、連想配列と呼ばれる文字列インデックスです。
上記のアクセスオブジェクト属性値は、オブジェクト属性名を知ることに関するものです。オブジェクト属性値がわからない場合はどうなりますか?オブジェクト内の値をループするには/inを使用できます。
// 2つのプロパティ、x、y、name var o2 = {x:12、y: '12'、name: 'js'}を持つオブジェクトを作成します。 for(p in o2){varプロパティ= p; var値= o2 [p]; console.log(Property); console.log(value); }印刷の結果は次のとおりです。
x12y12namejs
合計3つの属性があり、その値が印刷されていることがわかります。
オブジェクトがより複雑な場合は、いくつかの判断を追加して、プロパティがあるかどうかを判断できます。では、オブジェクトに特定のプロパティが含まれているかどうかをどのように判断しますか?オブジェクトはすべてオブジェクトを継承するため、オブジェクトにhasownProperty()メソッドがあり、オブジェクトにプロパティがあるかどうかを決定します。返品値はブール値です。この方法は、オブジェクト自身の属性が存在するかどうかのみを判断し、オブジェクトによって継承された属性を判断しないことに注意してください。
// 2つのプロパティ、x、y、name var o2 = {x:12、y: '12'、name: 'js'}を持つオブジェクトを作成します。 var b = o2.hasownproperty( 'name')// true var b2 = o2.hasownproperty( 'age')// false3.属性を追加および削除します
最初に、オブジェクトO4に名前属性を追加しました。新しい方法は、実際には属性値の割り当てと同じです。連想配列を使用してオブジェクトに属性を追加することもできます。
// 2つのプロパティ、x、y、name var o2 = {x:12、y: '12'、name: 'js'}を持つオブジェクトを作成します。 // delete name属性を削除o2.nameを削除します。 var b = o2.hasownproperty( 'name')// false //名前属性O2 ['name'] = 'javascript'; //名前属性が既に存在するため、名前o2.name = 'js'を再割り当てすることを以下に示します。 var b3 = o2.hasownproperty( 'name'); //真実上記では、オブジェクトO2の名前属性が削除され、名前属性が連想配列を使用して追加され、名前属性がドット番号を使用して再割り当てされました。
4。オブジェクトと文字列間の変換
ECMAScript5には、オブジェクトと文字列間の相互変換が組み込まれています。現在、ほとんどの主流ブラウザはECMAScript5をサポートしています。サポートしていない場合は、インターネットからjson2.jsクラスライブラリをダウンロードできます。このライブラリは、ファイルに導入した後に使用できます。
オブジェクトと文字列間の変換はオブジェクトシリアル化と呼ばれます。これは、オブジェクトの状態を文字列に変換するか、文字列をオブジェクトに変換することを意味します。これらの変換は、JSONをデータ交換形式として使用します。 JSONのフルネームはJavaScriptオブジェクト表記です。
json.stringify()を使用して、オブジェクトを文字列に変換します。 json.parse()を使用して、文字列をオブジェクトに変換します。
//オブジェクトを定義するvar o = {name: 'javascript'、age:24}; //この方法は、オブジェクトに変換するときのエラーです。次の方法を使用する必要があります// var str = "{name: 'javascript'、age:24}"; //オブジェクト文字列var str = '{"name": "javascript"、 "age":24}'; //オブジェクトを文字列に変換するvar str2 = json.stringify(o); console.log( 'str2:'+str2+'、type:'+(typeof str2)); // str2:{"name": "javascript"、 "age":24}、type:string //文字列をオブジェクトに変換するvar o2 = json.parse(str); console.log( 'o2:'+o2+'、type:'+(typeof o2)); // o2:[object object]、type:object上記は、オブジェクトと文字列間の相互変換を実装します。
JSでのオブジェクトの使用に関する上記の簡単な議論は、私があなたと共有するすべてのコンテンツです。私はそれがあなたに参照を与えることができることを願っています、そしてあなたがwulin.comをもっとサポートできることを願っています。