Objek JavaScript ialah blok binaan asas dalam bahasa, menyediakan cara untuk mengumpulkan data dan fungsi berkaitan bersama-sama. Ia penting untuk bekerja dengan data berstruktur dan merupakan asas pengaturcaraan berorientasikan objek dalam JavaScript.
Objek dalam JavaScript ialah koleksi sifat, di mana setiap sifat mempunyai kunci (atau nama) dan nilai. Nilai boleh terdiri daripada sebarang jenis data, termasuk objek atau fungsi lain.
const person = { name: "Alice", age: 30, greet: function () { console.log("Hello, " + this.name); } };
Cara paling biasa dan mudah untuk mencipta objek.
const car = { brand: "Tesla", model: "Model S", year: 2023 };
Mencipta objek menggunakan pembina Objek.
const book = new Object(); book.title = "JavaScript: The Good Parts"; book.author = "Douglas Crockford";
Pembina tersuai untuk mencipta objek yang serupa.
function Person(name, age) { this.name = name; this.age = age; } const user = new Person("Bob", 25);
Sintaks moden untuk penciptaan objek menggunakan kelas ES6.
class Animal { constructor(type, sound) { this.type = type; this.sound = sound; } } const dog = new Animal("Dog", "Bark");
Anda boleh mengakses sifat menggunakan:
console.log(person.name);
console.log(person["name"]);
person.hobby = "Reading"; // Adding a new property person.age = 31; // Updating an existing property
delete person.hobby;
Kaedah ialah fungsi yang dikaitkan dengan objek.
const person = { name: "Alice", age: 30, greet: function () { console.log("Hello, " + this.name); } };
const car = { brand: "Tesla", model: "Model S", year: 2023 };
const book = new Object(); book.title = "JavaScript: The Good Parts"; book.author = "Douglas Crockford";
function Person(name, age) { this.name = name; this.age = age; } const user = new Person("Bob", 25);
class Animal { constructor(type, sound) { this.type = type; this.sound = sound; } } const dog = new Animal("Dog", "Bark");
console.log(person.name);
console.log(person["name"]);
Objek boleh mengandungi objek lain sebagai sifat.
person.hobby = "Reading"; // Adding a new property person.age = 31; // Updating an existing property
Ekstrak nilai daripada objek kepada pembolehubah.
delete person.hobby;
const calculator = { add: function (a, b) { return a + b; }, subtract(a, b) { return a - b; // Shorthand syntax } }; console.log(calculator.add(5, 3));
console.log("name" in person); // true
JavaScript menyediakan banyak kaedah statik untuk objek.
Menyalin sifat daripada satu objek ke objek lain.
console.log(person.hasOwnProperty("age")); // true
Menghalang pengubahsuaian pada objek.
for (let key in person) { console.log(key, person[key]); }
Membenarkan kemas kini tetapi menghalang penambahan atau pemadaman sifat.
console.log(Object.keys(person));
Mencipta objek baharu dengan prototaip yang ditentukan.
console.log(Object.values(person));
Objek disimpan dan dimanipulasi melalui rujukan, bukan nilai.
console.log(Object.entries(person));
const company = { name: "Tech Corp", address: { city: "San Francisco", zip: "94105" } }; console.log(company.address.city); // Access nested object
Objek dalam JavaScript mempunyai prototaip, membenarkan pewarisan sifat dan kaedah.
const { name, age } = person; console.log(name, age);
const newPerson = { ...person, gender: "Female" };
Mewakili Entiti Dunia Nyata:
Objek sering memodelkan struktur data, seperti pengguna atau produk.
Fungsi Pengumpulan:
Objek boleh berfungsi sebagai modul atau ruang nama.
const person = { name: "Alice", age: 30, greet: function () { console.log("Hello, " + this.name); } };
Objek JavaScript berkuasa dan fleksibel, membentuk tulang belakang kebanyakan aplikasi. Memahami ciri dan keupayaan mereka membolehkan pembangun menulis kod yang cekap, boleh diselenggara dan berskala. Penguasaan objek ialah langkah asas untuk menjadi mahir dalam JavaScript.
Hai, saya Abhay Singh Kathayat!
Saya seorang pembangun tindanan penuh dengan kepakaran dalam kedua-dua teknologi hadapan dan belakang. Saya bekerja dengan pelbagai bahasa pengaturcaraan dan rangka kerja untuk membina aplikasi yang cekap, berskala dan mesra pengguna.
Jangan ragu untuk menghubungi saya melalui e-mel perniagaan saya: kaashshorts28@gmail.com.
Atas ialah kandungan terperinci Menguasai Objek JavaScript: Tulang Belakang Pengaturcaraan Dinamik. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!