Rumah > hujung hadapan web > tutorial js > Mengapakah `this.var` Diperlukan untuk Pembolehubah Objek dalam JavaScript?

Mengapakah `this.var` Diperlukan untuk Pembolehubah Objek dalam JavaScript?

DDD
Lepaskan: 2024-12-16 12:45:14
asal
669 orang telah melayarinya

Why is `this.var` Necessary for Object Variables in JavaScript?

Javascript: Keperluan "this.var" untuk Pembolehubah Objek

Dalam bahasa pengaturcaraan tertentu seperti C , mengisytiharkan pembolehubah objek menggunakan "ini ->pembolehubah" selalunya pilihan apabila pembolehubah berada dalam skop kelas. Walau bagaimanapun, dalam Javascript, menggunakan "this.var" untuk setiap pembolehubah dalam objek adalah penting.

Mengapa "this.var" Diperlukan

Javascript menggunakan unik model pewarisan prototaip dan bukannya sistem berasaskan kelas. Objek yang dicipta menggunakan kata kunci "baharu" mewarisi sifat dan kaedah daripada objek prototaipnya.

Apabila mentakrifkan kaedah dalam fungsi pembina objek, kata kunci "ini" merujuk kepada objek yang dibuat. Menetapkan sifat tanpa menggunakan "ini" mencipta pembolehubah setempat dalam kaedah, yang tidak boleh diakses di luar fungsi.

Contoh: Tanpa "this.var"

function Foo() {
    bar = 0;
    getBar = function() { return bar; }
}

const foo = new Foo();
console.log(foo.getBar()); // ReferenceError: bar is not defined
Salin selepas log masuk

Contoh: Dengan "this.var"

function Foo() {
    this.bar = 0;
    this.getBar = function() { return this.bar; }
}

const foo = new Foo();
console.log(foo.getBar()); // 0
Salin selepas log masuk

Pendekatan Alternatif: Penutupan

Untuk mencipta pembolehubah persendirian dalam objek, pembangun Javascript sering menggunakan pendekatan penutupan. Dengan mentakrifkan pembolehubah tempatan dalam fungsi pembina dan mengembalikan kaedah istimewa yang mengakses pembolehubah tersebut, adalah mungkin untuk mengekalkan atribut peribadi sambil mendedahkan kaedah awam.

Contoh: Menggunakan Penutupan

function Foo() {
    let bar = "foo";

    this.getBar = function() {
        return bar;
    };
}

const foo = new Foo();
console.log(foo.getBar()); // "foo"
Salin selepas log masuk

Kesimpulan

Semasa penggunaan "this.var" mungkin kelihatan bertele-tele, ia adalah penting dalam Javascript untuk memastikan pembolehubah objek boleh diakses dalam kaedah dan mengekalkan perbezaan antara pembolehubah peringkat tempatan dan peringkat objek. Sebagai alternatif, menggunakan penutupan menyediakan cara untuk mencipta pembolehubah peribadi dalam objek, meningkatkan pengkapsulan dan keselamatan data.

Atas ialah kandungan terperinci Mengapakah `this.var` Diperlukan untuk Pembolehubah Objek dalam JavaScript?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
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
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan