Properti Objek JavaScript
Properti adalah bagian terpenting dari objek JavaScript apa pun.
Properti JavaScript
Properti adalah nilai yang terkait dengan objek JavaScript.
Objek JavaScript adalah kumpulan properti yang tidak berurutan.
Properti biasanya dapat diubah, ditambahkan, dan dihapus, tetapi ada juga yang hanya dapat dibaca.
Mengakses Properti JavaScript
Sintaks untuk mengakses properti suatu objek adalah:
objectName.property // person.age
atau
objectName["property"] // person["age"]
atau
objectName[expression] // x = "age"; person[x]
Ekspresi harus mengevaluasi ke nama properti.
Contoh 1
person.firstname + " is " + person.age + " years old.";
Contoh 2
person["firstname"] + " is " + person["age"] + " years old.";
JavaScript untuk...di Loop
Pernyataan JavaScript for...in
loop melalui properti dari suatu objek.
Sintaksis
for (let variable in object) {
// code to be executed
}
Blok kode di dalam for...in
loop akan dieksekusi sekali untuk setiap properti.
Perulangan melalui properti suatu objek:
Contoh
const person = {
fname:" John",
lname:" Doe",
age: 25
};
for (let x in person) {
txt += person[x];
}
Menambahkan Properti Baru
Anda dapat menambahkan properti baru ke objek yang ada hanya dengan memberinya nilai.
Asumsikan bahwa objek orang sudah ada - Anda kemudian dapat memberinya properti baru:
Contoh
person.nationality = "English";
Menghapus Properti
Kata delete
kunci menghapus properti dari objek:
Contoh
const person = {
firstName: "John",
lastName: "Doe",
age: 50,
eyeColor: "blue"
};
delete person.age;
atau hapus orang["usia"];
Contoh
const person = {
firstName: "John",
lastName: "Doe",
age: 50,
eyeColor: "blue"
};
delete person["age"];
Kata delete
kunci menghapus nilai properti dan properti itu sendiri.
Setelah dihapus, properti tidak dapat digunakan sebelum ditambahkan kembali.
Operator
delete
dirancang untuk digunakan pada properti objek. Ini tidak berpengaruh pada variabel atau fungsi.
Operator delete
tidak boleh digunakan pada properti objek JavaScript yang telah ditentukan sebelumnya. Itu bisa membuat aplikasi Anda crash.
Objek Bersarang
Nilai dalam suatu objek dapat berupa objek lain:
Contoh
myObj = {
name:"John",
age:30,
cars: {
car1:"Ford",
car2:"BMW",
car3:"Fiat"
}
}
Anda dapat mengakses objek bersarang menggunakan notasi titik atau notasi braket:
Contoh
myObj.cars.car2;
atau:
Contoh
myObj.cars["car2"];
atau:
Contoh
myObj["cars"]["car2"];
atau:
Contoh
let p1 = "cars";
let p2 = "car2";
myObj[p1][p2];
Array dan Objek Bersarang
Nilai dalam objek dapat berupa array, dan nilai dalam array dapat berupa objek:
Contoh
const myObj =
{
name: "John",
age: 30,
cars: [
{name:"Ford",
models:["Fiesta", "Focus", "Mustang"]},
{name:"BMW", models:["320", "X3", "X5"]},
{name:"Fiat", models:["500", "Panda"]}
]
}
Untuk mengakses array di dalam array, gunakan loop for-in untuk setiap array:
Contoh
for (let i in myObj.cars) {
x += "<h1>" + myObj.cars[i].name
+ "</h1>";
for (let j in myObj.cars[i].models) {
x += myObj.cars[i].models[j];
}
}
Atribut Properti
Semua properti memiliki nama. Selain itu mereka juga memiliki nilai.
Nilai adalah salah satu atribut properti.
Atribut lainnya adalah: enumerable, configurable, dan writable.
Atribut ini menentukan bagaimana properti dapat diakses (apakah dapat dibaca?, apakah dapat ditulis?)
Dalam JavaScript, semua atribut dapat dibaca, tetapi hanya atribut nilai yang dapat diubah (dan hanya jika properti dapat ditulis).
( ECMAScript 5 memiliki metode untuk mendapatkan dan mengatur semua atribut properti)
Properti Prototipe
Objek JavaScript mewarisi properti prototipenya.
Kata delete
kunci tidak menghapus properti yang diwarisi, tetapi jika Anda menghapus properti prototipe, itu akan memengaruhi semua objek yang diwarisi dari prototipe.