Setiap objek fungsi mempunyai atribut panjang, menunjukkan bilangan parameter yang dijangka diterima oleh fungsi. Salin kod Kod adalah seperti berikut: var add =function(num1,num2,num3){ <br> makluman(nombor1 nombor2 nombor3); } <br> makluman(tambah.panjang); </skrip> </head> <badan> <br> </body> </html><br> <br><br> <br>Mengenai kaedah penciptaan berorientasikan objek js,<br> <br>Sasaran:<br> <br>Bina objek pesanan.</div> Mengandungi tiga atribut: tarikh, jumlah, penyerah Mengandungi kaedah: rentetan paparan: "XX menyerahkan pesanan dengan jumlah XXXX yuan pada XXXX-XX-XX"<p> </p>1 kaedah kilang<p> </p> <p><br><br></p>Salin kod<p></p> <p> Kod adalah seperti berikut:</p> <div class="codetitle"> <span><a style="CURSOR: pointer" data="6131" class="copybut" id="copybut6131" onclick="doCopy('code6131')"> <script type=text/javascript><u> /*</u> Kaedah kilang: Kembalikan objek dengan menggunakan kaedah Tidak perlu menjana objek baharu melalui objek baharu apabila menggunakannya.</a> */</span> function createOrder()//Anda juga boleh membina kaedah kilang dengan parameter dan memulakan data objek mengikut parameter yang dihantar.</div> {<div class="codebody" id="code6131"> var order = new Object();<br> Pesanan.Tarikh = "1990-1-1";<br> Pesanan.Harga = "3200";<br> Pesanan.Nama = "Vince Keny";<br> Order.show = function () // Letakkan kaedah pertunjukan di kilang dan buat kaedah pertunjukan untuk setiap contoh. alert(this.Name " menyerahkan pesanan dengan had " this.Price " yuan on " this.Date ".")<br> } pemulangan pesanan;<br> }<br> //Gunakan mod kilang untuk mengembalikan objek:<br> var order = createOrder();<br> // Anda juga boleh menggunakannya dengan cara ini, menukar corak kilang kepada "pembina pseudo". var order2 = new createOrder();<br> Order.Show();<br> Pesanan2.Tunjukkan();<br> <br><br> <br>Kaedah 2 Pembina<br> <br><br><br><br><br>Salin kod<br><br><br> Kod adalah seperti berikut:</div> <div class="codebody" id="code84105"> <br> /*<br> Dalam kaedah pembina, pengisytiharan kaedah adalah sama dengan kaedah kilang, dan terdapat masalah yang sama, yang juga boleh diekstrak Perbezaannya ialah apabila mengisytiharkan atribut, gunakan ini<br> Dan anda perlu menggunakan operator baharu untuk menjana tika.<br> */<br> fungsi Perintah()<br> {<br> This.Date = "1990-1-1";<br> Ini.Harga = "3200";<br> This.Name = "Vince Keny";<br> This.Show = function()<br> {<br> alert(this.Name " menyerahkan pesanan dengan jumlah " this.Price " yuan on " this.Date ".")<br> }<br> }<br> <br> var order = new Order();<br> pesanan.Tunjukkan();<br> </div> <p>Tiga kaedah prototaip</p> <p></p> <div class="codetitle"> <span><a style="CURSOR: pointer" data="23626" class="copybut" id="copybut23626" onclick="doCopy('code23626')"><u>Salin kod</u></a></span> Kod adalah seperti berikut:</div> <div class="codebody" id="code23626"> <br> /*<br> Kaedah prototaip: gunakan prototaip<br> */<br> fungsi Perintah()<br> {}<br> <br> Order.prototype.Date = "1990-1-1";<br> Order.prototype.Price = "3200";<br> Order.prototype.Name = "Vince Keny";<br> Order.prototype.Show = function()<br> {<br> alert(this.Name " menyerahkan pesanan dengan jumlah " this.Price " yuan on " this.Date ".")<br> }<br> var order = new Order();<br> pesanan.Tunjukkan();<br> </div> <p>Empat kaedah pembina/prototaip campuran</p> <p></p> <div class="codetitle"> <span><a style="CURSOR: pointer" data="5063" class="copybut" id="copybut5063" onclick="doCopy('code5063')"><u>Salin kod</u></a></span> Kod adalah seperti berikut:</div> <div class="codebody" id="code5063"> <br> /*<br> Kaedah pembina/prototaip campuran: Gunakan kaedah pembina untuk memulakan medan atribut dan gunakan kaedah prototaip untuk membina kaedah.<br> */<br> fungsi Perintah()<br> {<br> This.Date = "1990-1-1";<br> Ini.Harga = "3200";<br> This.Name = "Vince Keny";<br> }<br> Order.prototype.Show = function().<br> {<br> alert(this.Name " menyerahkan pesanan dengan jumlah " this.Price " yuan on " this.Date ".")<br> }<br> var order = new Order();<br> pesanan.Tunjukkan();<br> </div> <p>Lima Kaedah Campuran Dinamik</p> <p></p> <div class="codetitle"> <span><a style="CURSOR: pointer" data="87309" class="copybut" id="copybut87309" onclick="doCopy('code87309')"><u>Salin kod</u></a></span> Kod adalah seperti berikut:</div> <div class="codebody" id="code87309"> <br> /*<br> Kaedah hibrid dinamik: Perbezaan daripada kaedah hibrid ialah kedudukan di mana kaedah diisytiharkan Kehidupan kaedah diletakkan di dalam pembina, yang lebih selaras dengan berorientasikan objek.<br> */<br> fungsi Perintah()<br> {<br> This.Date = "1990-1-1";<br> Ini.Harga = "3200";<br> This.Name = "Vince Keny";<br> <br> If(typeof Order._initialized == "undefined")<br> {<br> Order.prototype.Show = function().<br> alert(this.Name " menyerahkan pesanan dengan had " this.Price " yuan on " this.Date ".")<br> }; Pesanan._dimulakan = benar;<br> }<br> }<br> <br> fungsi Kereta(sColor,iDoors){ var oTempCar = Objek baharu;<p> oTempCar.color = sColor;<br> oTempCar.doors = iDooes;<br> oTempCar.showColor = fungsi (){<br> makluman(warna.ini)<br> };<br> pulangkan oTempCar;<br> }<br> var oCar1 = Kereta baharu("merah",4);<br> var oCar2 = Kereta baharu("biru",3);<br> oCar1.showColor(); //mengeluarkan "merah"<br> oCar2.showColor(); //mengeluarkan "biru"<br> <br><br></p> </div>