JavaScript はオブジェクトを作成できます。作成方法: 1. Object を使用してオブジェクトを直接作成し、構文は「new Object()」です; 2. new キーワードを使用してオブジェクトを作成します、構文は「new object name()」です; 3. JSON を使用してオブジェクトを作成する場合、構文は「object={property" Name: 属性値,...}」です。
このチュートリアルの動作環境: Windows 10 システム、JavaScript バージョン 1.8.5、Dell G3 コンピューター。
JavaScript オブジェクトは、さまざまな値を保持できる変数です。これは、関連する値のセットのコンテナーとして機能します。たとえば、Web サイトのユーザーや銀行口座の請求書はすべて JavaScript オブジェクトにすることができます。
JavaScript では、オブジェクトにはプロパティとメソッドという 2 種類の値が含まれます。
JavaScript オブジェクトを作成するときは、その名前、プロパティ、メソッドを定義する必要があります。
JavaScript オブジェクトを作成する方法:
1. Object を使用してオブジェクトを直接作成します
var myObj=new Object();//使用Object类创建一个空的对象 myObj.name="wangshihcheng"; myObj.age=20; myObj.infor=function(){ document.write("名字:"+this.name);//this.的指向问题 document.write("年龄:"+this.age); } myObj.infor();//调用创建的对象里面的方法;
2. new キーワードを使用してコンストラクターを呼び出し、オブジェクトを作成します。
コードは次のとおりです:
<script> var obj = new Object(); obj.name = "Kitty";//为对象增加属性 obj.age = 21; obj.showName = function () {//为对象添加方法 console.log(this.name); }; obj.showAge = function(){ console.log(this.age); }; obj.showName(); obj.showAge(); </script>
このメソッドは、new キーワードを使用してオブジェクトを生成し、動的言語であるJavaScriptの特性に応じた属性とオブジェクトを構築するメソッド。 this は、メソッドが呼び出されるオブジェクトを表します。
この方法の問題は、オブジェクトを複数回作成する必要がある場合、コードを複数回繰り返す必要があり、コードの再利用に役立たないことです。
3. プロトタイプ モードを使用してオブジェクトを作成する
JavaScript では、各関数にプロトタイプ属性があり、これは
# と呼ばれるオブジェクトを指すポインターです。 ##プロトタイプ オブジェクト。プロトタイプ オブジェクトには、特定の型のすべてのインスタンス オブジェクトで共有できるプロパティとメソッドが含まれています。さらに、このオブジェクトには、コンストラクター メソッドを指す組み込みの属性コンストラクターがあります。オブジェクトの作成; プロトタイプ パターンを使用すると、すべてのインスタンスがプロトタイプ オブジェクトのプロパティとメソッドを共有できるため、オブジェクトのインスタンス情報を定義する必要がありません。コンストラクター内;function Student(){ } Student.prototype.name="wang"; Student.prototype.sex="man"; Student.prototype.class="5"; Student.prototype.sayName=function(){ console.log(this.name); } var s1=new Student(); s1.sayName();//wang var s2=new Student(); s2.sayName();//wang s2.name="shicheng"; s2.sayName();//shicheng
## は、プロトタイプでこの属性を見つけ、プロトタイプの対応する属性を返します。値が見つからない場合は、undefine が返されます。
##したがって、インスタンス オブジェクトのプロパティが、プロトタイプ オブジェクトのプロパティ;4. JSON を使用してオブジェクトを作成します
//object={属性名 1: 属性値 1、属性名 2: 属性値2,...}//JOSN 形式の属性名は二重引用符を追加する必要があることに注意してください;
var p={ "name":"wangsch", "gender":"man", "age":40, "son":[ { "name":"son1", "age":2 }, { "name":"son2", "age":5 } ], "infor":function(){ document.write("父亲的姓名:"+this.name+",父亲的年龄:"+this.age+"<br>"); for( var child in this.son ){ document.write("儿子的姓名:"+this.son[child].name+",儿子的年龄:"+this.son[child].age+"<br>"); } } } p.infor();//调用对象p中的infor方法
5. コンストラクターとプロトタイプ パターンの組み合わせを使用してオブジェクトを作成します
コンストラクターはインスタンスの属性を定義するために使用され、プロトタイプ パターンはメソッドと共有属性を定義するために使用されます。function Student(name,sex,grade){
this.name=name;
this.sex=sex;
this.grade=grade;
}
Student.prototype.sayName=function(){
console.log(this.name);
}
Student.prototype.school="nongda";
6. 動的プロトタイプ メソッドを使用してオブジェクトを作成します。
<script> function Person(name,age){ this.name = name; this.age = age; this.array = new Array("Kitty","luo"); //如果Person对象中_initialized 为undefined,表明还没有为Person的原型添加方法 if(typeof Person._initialized == "undefined"){ Person.prototype.showName = function () { console.log(this.name); }; Person.prototype.showArray = function () { console.log(this.array); }; Person._initialized = true; } } var obj1 = new Person("Kitty",21); var obj2 = new Person("luo",22); obj1.array.push("Wendy");//向obj1的array属性添加一个元素 obj1.showArray();//Kitty,luo,Wendy obj1.showName();//Kitty obj2.showArray();//Kitty,luo obj2.showName();//luo </script>
JavaScript ビデオ チュートリアル
、Web フロントエンド
]以上がJavaScript はオブジェクトを作成できませんの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。