Hari ini, ketika saya sedang mengerjakan sebuah proyek, saya menemukan situasi di mana saya perlu membuat objek JavaScript. Jadi, sebuah artikel yang ditulis oleh orang asing tentang membuat objek JavaScript, dan kemudian membacanya dan mengetikkan kodenya. Saya merasa metodenya cukup bagus, jadi saya akan membaginya dengan Anda di sini.
1. Buat objek menggunakan fungsi:
Salinan kode adalah sebagai berikut:
// Tentukan objek
fungsi hewan (tipe)
{
this.name = "";
this.type = type;
this.introduction = function () {
kembalikan "Nama saya adalah:"+this.name+", saya milik"+this.type;
}
}
var hewan = hewan baru ("unggas"); // instantiate objek yang kami buat di atas
animal.name = "xiaohong";
waspada (animal.troduction ()); // Panggil fungsi pengantar (saat ini, halaman akan muncul: Nama saya Xiaohong, saya termasuk unggas);
Setiap orang harus terbiasa dengan metode ini. Namun, menggunakan metode ini dapat menyebabkan kerugian kinerja. Di sini, kami instantiate objek melalui kunci baru. Faktanya, kunci yang baru adalah melakukan dua hal. 1. Metode anonim didefinisikan. 2. Sebut saja. Ini tidak seefisien metode yang akan kami perkenalkan selanjutnya.
2. Gunakan Literal Objek:
Saya tidak tahu apakah terjemahannya benar. Saya akan memberi tahu Anda alamat aslinya nanti. Jika Anda tertarik, Anda dapat membaca teks asli.
Salinan kode adalah sebagai berikut:
// Tentukan objek
var book =
{
Nama: "Dream of Red Mansions",
Jenis: "Karya Sastra",
getAuthor: function ()
{
kembali: "Saya anak Cao Xueqin!";
}
}
alert (book.getauthor ()); // Panggil metode objek, dan halaman akan muncul: Saya anak Cao Xueqin.
Book.name = "slam dunk"; // Ubah Properti Objek
peringatan (book.name); // Saat ini, halaman akan muncul: slam dunk
Saya percaya bahwa ketika Anda melihat kode, Anda harus memahami mengapa metode ini lebih efisien. Karena, setara dengan mendefinisikan variabel global JavaScript. Kita dapat menggunakannya secara langsung tanpa instantiasi. Tapi, terlihat aneh. Kemudian, solusinya ada di sini. Mari kita lihat metode ketiga.
3. Singleton menggunakan fungsi:
Diterjemahkan ke dalam mode singleton mungkin tidak sesuai. Mari kita lihat kode terlebih dahulu:
Salinan kode adalah sebagai berikut:
// Tentukan objek
var gender = fungsi baru ()
{
this.type = "girls";
this.speaking = function ()
{
mengembalikan "I Am"+this.Type;
}
}
Peringatan (gender.speaking ();) // Halaman akan muncul saat menggunakan objek: Saya seorang gadis.
Jika Anda melihat kode ini, apakah ini sangat mirip dengan metode kami? Namun, itu bisa berfungsi seperti metode satu. Metode 1: Gunakan objek sekali, dan Anda perlu membuat objek sekali. Metode ini dapat digunakan secara permanen dengan membuat objek sekali. Oleh karena itu, metode ini sangat mirip dengan pola singleton dalam pola desain.