Rumah >hujung hadapan web >tutorial js >Mencipta Objek dalam JavaScript: Penutupan, Prototaip dan ESlasses

Mencipta Objek dalam JavaScript: Penutupan, Prototaip dan ESlasses

Linda Hamilton
Linda Hamiltonasal
2025-01-04 12:13:34871semak imbas

Creating Objects in JavaScript: Closures, Prototypes, and ESlasses

Dalam JavaScript, terdapat beberapa cara untuk mencipta objek. Setiap kaedah mempunyai kelebihan dan kes penggunaannya sendiri. Kami akan meneroka tiga kaedah biasa: penutupan, prototaip dan kelas ES6 dengan contoh.

1. Menggunakan Penutupan

Penutupan ialah fungsi yang mengingati persekitaran di mana ia dicipta. Ini membolehkan kami merangkum data dalam fungsi.

function createPerson(name) {
    let age = 0;

    return {
        getAge: function() {
            return age;
        },
        growUp: function() {
            age++;
        }
    };
}

const person1 = createPerson("Alice");
console.log(person1.getAge()); // Output: 0
person1.growUp();
console.log(person1.getAge()); // Output: 1

2. Menggunakan Prototaip

Prototaip membolehkan kami mencipta objek dengan sifat dan kaedah yang dikongsi.

function Person(name) {
    this.name = name;
}

Person.prototype.getAge = function() {
    return this.age || 0;
};

Person.prototype.growUp = function() {
    if (!this.age) {
        this.age = 1;
    } else {
        this.age++;
    }
};

const person2 = new Person("Bob");
console.log(person2.getAge()); // Output: 0
person2.growUp();
console.log(person2.getAge()); // Output: 1

3. Menggunakan Kelas ES6

Kelas ES6 menyediakan sintaks berasaskan kelas yang lebih tradisional, menjadikannya lebih mudah untuk difahami dan digunakan.

class Person {
    constructor(name) {
        this.name = name;
        this.age = 0;
    }

    getAge() {
        return this.age;
    }

    growUp() {
        this.age++;
    }
}

const person3 = new Person("Charlie");
console.log(person3.getAge()); // Output: 0
person3.growUp();
console.log(person3.getAge()); // Output: 1

Kami meneroka tiga kaedah untuk mencipta objek dalam JavaScript: penutupan, prototaip dan kelas ES6. Setiap kaedah mempunyai kekuatan dan kes penggunaannya sendiri.

  • Penutupan berguna untuk merangkum data dalam fungsi.
  • Prototaip membolehkan kami berkongsi sifat dan kaedah antara berbilang objek.
  • Kelas ES6 menyediakan sintaks berasaskan kelas yang lebih tradisional, menjadikannya lebih mudah untuk difahami dan digunakan.

Atas ialah kandungan terperinci Mencipta Objek dalam JavaScript: Penutupan, Prototaip dan ESlasses. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
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