Rumah hujung hadapan web tutorial js JavaScript 基于原型的对象(创建、调用)_js面向对象

JavaScript 基于原型的对象(创建、调用)_js面向对象

May 16, 2016 pm 06:44 PM
objek

JavaScript中的对象有三种
1,内部对象
如Array,Boolean,Data,Math,Number,Object,RegExp,String对象等
这些对象系统给我们提供了各自的属性与方法供调用。
2,基于类的对象
用类的方式实现对象的引用,这些类需要我们自己定义
3,基于原型的对象
提供有关如何使用 JavaScript 基于原型的对象模型的指南,并且提供指向特定信息的链接,这些信息描述基于原型的对象的自定义构造函数和继承。

在我们写js代码的时候,内部对象是不可避免的要引用,但是光靠这些对象是不够的,所以需要我们自己定义对象,这个时候通常用到的对象是第三种,即基于原型的对象,下面就如何创建自己的对象,定义对象的方法、属性,调用对象给出详细的说明。
复制代码 代码如下:

//JScript 的一个强大功能是能够定义构造函数,以创建自定义的基于原型的对象,以便在您的脚本中使用。
//要创建基于原型的对象的实例,首先必须定义一个构造函数。
//此过程将创建一个新对象并将它初始化(创建属性并赋初始值)。
//当完成后,构造函数将返回对所构造对象的引用。
//在构造函数内部,创建的对象是通过 this 语句引用的。
function people(name,age)//定义people对象
{
this.mName=name;//这里的mName表示属性,无需在外面定义,this指示的是people这个对象
this.Age=age;
this.category="哺乳动物";
this.toString=Exporting;//方法,注意这里只能写toString,而不是toString()
this.myMethod=function()//等价于this.myMethod=method;然后下面写method的方法
{
return "你好";
}
}
function Exporting()//可以有返回值,但函数名前不用写返回值的类型,如string,int之类
{
return "我的名字是——"+this.mName+",年龄是——"+this.Age;
}
/*function method()
{
return "你好";
}*/
people.prototype.getName=function()//在构造函数外面写方法,
//也也可以这样写function people.prototype.getName()
//等价于在构造函数里面的方法:this.getName
{
return this.mName;
}
people.prototype.getAge=this.Age;//在构造函数外面写属性,
//等价于在构造函数里面的方法:this.getAge
function people.prototype.getMoney()//同people.prototype.getMoney=function()等价
//也等价于在构造函数里的写法:this.getMoney
{
return "1000";
}
function show()//调用people对象
{
var me=new people("刘德华",22);//实例化people对象,关键字new
//var myName=me.getName();
//alert(myName);
me.sex="男";//这里的sex属性只能用于me这个实例,即特有属性
//而如果有定义var you =new people("小强",1);
//you这个实例却不能调用sex属性
//如果要这两个实例都可以引用的话应该把sex属性写作people.prototype.sex
//alert(me.sex);
//alert(me.category);
//alert(me.toString());//或者直接写alert(me)即可
//alert(me.myMethod());
//alert(me.getMoney());
alert(me.myMethod()+"\n姓名:"+me.getName()+"\n性别:"+me.sex+"\n类别:"+me.category+"\n总资产:"+me.getMoney()+"\n总结:"+me.toString());
}

根据上面的思路,可以在JavaScript内置对象上添加其它属性或者方法,下面为String对象增加一
good方法和bad属性,这是内置对象中所没有的方法和属性
复制代码 代码如下:

String.prototype.good=function()//自定义方法
{
return "恭喜你成功对内置String对象追加good方法";
}
String.prototype.bad="恭喜你成功对内置String对象追加bad属性";//自定义属性
function test()//调用String对象追加的属性和方法
{
var str="good good study";//定义一个字符串实例str
alert(str.good()+"\n"+str.bad);//调用自定义的string对象的方法good和属性bad
}

最后在html中添加两个button按钮,测试对象people和string对象追加的方法和属性
复制代码 代码如下:


JavaScript基于原型的对象










测试结果通过。。。。。。。表明对象的创建、对象方法属性的调用、内部对象的追加方法和属性调用都是正确的。
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn

Alat AI Hot

Undresser.AI Undress

Undresser.AI Undress

Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover

AI Clothes Remover

Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool

Undress AI Tool

Gambar buka pakaian secara percuma

Clothoff.io

Clothoff.io

Penyingkiran pakaian AI

AI Hentai Generator

AI Hentai Generator

Menjana ai hentai secara percuma.

Artikel Panas

R.E.P.O. Kristal tenaga dijelaskan dan apa yang mereka lakukan (kristal kuning)
3 minggu yang lalu By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Tetapan grafik terbaik
3 minggu yang lalu By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Cara Memperbaiki Audio Jika anda tidak dapat mendengar sesiapa
3 minggu yang lalu By 尊渡假赌尊渡假赌尊渡假赌
WWE 2K25: Cara Membuka Segala -galanya Di Myrise
4 minggu yang lalu By 尊渡假赌尊渡假赌尊渡假赌

Alat panas

Notepad++7.3.1

Notepad++7.3.1

Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina

SublimeText3 versi Cina

Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1

Hantar Studio 13.0.1

Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6

Dreamweaver CS6

Alat pembangunan web visual

SublimeText3 versi Mac

SublimeText3 versi Mac

Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Tukar tatasusunan atau objek kepada rentetan JSON menggunakan fungsi json_encode() PHP Tukar tatasusunan atau objek kepada rentetan JSON menggunakan fungsi json_encode() PHP Nov 03, 2023 pm 03:30 PM

JSON (JavaScriptObjectNotation) ialah format pertukaran data ringan yang telah menjadi format biasa untuk pertukaran data antara aplikasi web. Fungsi json_encode() PHP boleh menukar tatasusunan atau objek kepada rentetan JSON. Artikel ini akan memperkenalkan cara menggunakan fungsi json_encode() PHP, termasuk sintaks, parameter, nilai pulangan dan contoh khusus. Sintaks Sintaks fungsi json_encode() adalah seperti berikut: st

Penerokaan kod sumber: Bagaimanakah objek dipanggil dalam Python? Penerokaan kod sumber: Bagaimanakah objek dipanggil dalam Python? May 11, 2023 am 11:46 AM

Wedge Kita tahu bahawa objek dicipta dalam dua cara utama, satu adalah melalui Python/CAPI, dan satu lagi adalah dengan memanggil objek jenis. Contohnya objek jenis terbina dalam, kedua-dua kaedah disokong Contohnya, senarai boleh dibuat melalui [] atau list(). Tetapi sebagai contoh objek kelas tersuai, kita hanya boleh menciptanya dengan memanggil objek jenis. Jika objek boleh dipanggil, maka objek itu boleh dipanggil, jika tidak, ia tidak boleh dipanggil. Menentukan sama ada objek boleh dipanggil bergantung pada sama ada kaedah ditakrifkan dalam objek jenis sepadannya. suka

Bagaimana untuk menukar tatasusunan hasil pertanyaan MySQL kepada objek? Bagaimana untuk menukar tatasusunan hasil pertanyaan MySQL kepada objek? Apr 29, 2024 pm 01:09 PM

Begini cara untuk menukar tatasusunan hasil pertanyaan MySQL kepada objek: Cipta tatasusunan objek kosong. Gelung melalui tatasusunan yang terhasil dan buat objek baharu untuk setiap baris. Gunakan gelung foreach untuk menetapkan pasangan nilai kunci setiap baris kepada sifat yang sepadan bagi objek baharu. Menambah objek baharu pada tatasusunan objek. Tutup sambungan pangkalan data.

Gunakan fungsi __contains__() Python untuk menentukan operasi pembendungan objek Gunakan fungsi __contains__() Python untuk menentukan operasi pembendungan objek Aug 22, 2023 pm 04:23 PM

Gunakan fungsi __contains__() Python untuk mentakrifkan operasi pembendungan objek Python ialah bahasa pengaturcaraan ringkas dan berkuasa yang menyediakan banyak ciri berkuasa untuk mengendalikan pelbagai jenis data. Salah satunya adalah untuk melaksanakan operasi pembendungan objek dengan mentakrifkan fungsi __contains__(). Artikel ini akan memperkenalkan cara menggunakan fungsi __contains__() untuk mentakrifkan operasi pembendungan objek, dan memberikan beberapa kod sampel. Fungsi __contains__() ialah Pytho

Apakah perbezaan antara tatasusunan dan objek dalam PHP? Apakah perbezaan antara tatasusunan dan objek dalam PHP? Apr 29, 2024 pm 02:39 PM

Dalam PHP, tatasusunan ialah urutan tersusun, dan elemen diakses mengikut indeks; Akses tatasusunan adalah melalui indeks, akses objek adalah melalui sifat/kaedah. Nilai tatasusunan diluluskan dan rujukan objek diluluskan.

Gunakan fungsi __le__() Python untuk menentukan perbandingan kurang daripada atau sama bagi dua objek Gunakan fungsi __le__() Python untuk menentukan perbandingan kurang daripada atau sama bagi dua objek Aug 21, 2023 pm 09:29 PM

Tajuk: Menggunakan fungsi __le__() Python untuk menentukan perbandingan kurang daripada atau sama bagi dua objek Dalam Python, kita boleh mentakrifkan operasi perbandingan antara objek dengan menggunakan kaedah khas. Salah satunya ialah fungsi __le__(), yang digunakan untuk menentukan perbandingan kurang daripada atau sama. Fungsi __le__() ialah kaedah ajaib dalam Python dan merupakan fungsi khas yang digunakan untuk melaksanakan operasi "kurang daripada atau sama". Apabila kita membandingkan dua objek menggunakan operator kurang daripada atau sama (<=), Python

Apakah objek Permintaan dalam PHP? Apakah objek Permintaan dalam PHP? Feb 27, 2024 pm 09:06 PM

Objek Permintaan dalam PHP ialah objek yang digunakan untuk mengendalikan permintaan HTTP yang dihantar oleh klien ke pelayan. Melalui objek Permintaan, kami boleh mendapatkan maklumat permintaan pelanggan, seperti kaedah permintaan, maklumat pengepala permintaan, parameter permintaan, dsb., untuk memproses dan membalas permintaan tersebut. Dalam PHP, anda boleh menggunakan pembolehubah global seperti $_REQUEST, $_GET, $_POST, dll. untuk mendapatkan maklumat yang diminta, tetapi pembolehubah ini bukan objek, tetapi tatasusunan. Untuk memproses maklumat permintaan dengan lebih fleksibel dan mudah, anda boleh

Penjelasan terperinci tentang 5 kaedah traversal gelung objek Javascript Penjelasan terperinci tentang 5 kaedah traversal gelung objek Javascript Aug 04, 2022 pm 05:28 PM

Bagaimana untuk menggelung melalui objek Javascript? Artikel berikut akan memperkenalkan lima kaedah traversal objek JS secara terperinci, dan secara ringkas membandingkan lima kaedah ini, saya harap ia akan membantu anda!

See all articles