Lewati ke konten

Property

Setelah halaman ini, kamu dapat menjelaskan aturan penamaan key properti, dan menulis key yang mengandung karakter khusus menggunakan tanda kutip.


Key properti pada object bertindak sebagai label. Sama seperti variabel, ada aturan penamaan yang harus dipatuhi. Namun, object memiliki fitur khusus: key bisa ditulis sebagai string jika memerlukan karakter khusus.


Secara umum, ikuti aturan yang sama dengan penamaan variabel (BAB 1):

Dianjurkan menggunakan camelCase:

📄 TypeScript
const siswa = {
namaSiswa: "Putra",
nomorAbsen: 15
}

2. Key dengan Karakter Khusus (Wajib Tanda Kutip)

Section titled “2. Key dengan Karakter Khusus (Wajib Tanda Kutip)”

Jika key mengandung spasi, tanda minus -, atau simbol khusus lainnya, bungkus nama key di dalam tanda kutip "..." atau '...':

📄 TypeScript
const dataSiswa = {
"nama lengkap": "Putra Ramadhan",
"nomor-absen": 15,
"kelas/jurusan": "XI RPL 1"
}

Bayangkan lemari laci di sekolah.

  • Laci standar bertuliskan satu kata: “Matematika”, “Fisika”, “Ujian”.
  • Laci khusus yang berlabel panjang bertuliskan kalimat berspasi: “Kertas Ujian Remidi Kelas X”.

Label panjang itu tetap valid untuk menandai laci, tetapi lebih repot dibaca dibanding label pendek satu kata.


🖥️ Output
Struktur Properti Object
const object = {
keyStandar: "nilai", // ✓ Bersih, tanpa kutip
"key dengan spasi": 100, // ✗ Wajib kutip, hindari jika bisa
"key-dengan-minus": true // ✗ Wajib kutip
}

Buat src/bab6/property.ts:

📄 TypeScript
type DataKustom = {
namaSiswa: string
"alamat rumah": string
"nomor-induk-siswa": number
}
const siswa: DataKustom = {
namaSiswa: "Putra",
"alamat rumah": "Sidoarjo",
"nomor-induk-siswa": 3515001
}
console.log("Nama:", siswa.namaSiswa)
// console.log("Alamat:", siswa.alamat rumah) // Error! Spasi merusak sintaks dot
console.log("Alamat:", siswa["alamat rumah"]) // ✓ Harus menggunakan bracket notation
console.log("NIS :", siswa["nomor-induk-siswa"])

Jalankan:

🖥️ Output
tsx src/bab6/property.ts
🖥️ Output
Nama: Putra
Alamat: Sidoarjo
NIS : 3515001

  • "alamat rumah" — properti type menggunakan spasi, wajib dibungkus kutip pada type alias dan object literal.
  • siswa["alamat rumah"] — properti dengan spasi tidak bisa diakses menggunakan tanda titik (siswa.alamat rumah akan dianggap error syntax oleh editor). Kita wajib menggunakan tanda kurung siku [] (bracket notation).

❌ Menulis key dengan spasi tanpa tanda kutip

Section titled “❌ Menulis key dengan spasi tanpa tanda kutip”
📄 TypeScript
const data = {
nama lengkap: "Putra" // Error! Spasi di luar tanda kutip memicu syntax error
}

Perbaikan:

📄 TypeScript
const data = {
"nama lengkap": "Putra" // ✓
}


Buat object dengan tipe data buatanmu sendiri yang memiliki properti standar camelCase dan minimal satu properti kustom menggunakan tanda minus (misal: "kode-pos"). Tampilkan objek tersebut.


  • Key properti standar dianjurkan menggunakan camelCase.
  • Key yang mengandung spasi atau karakter khusus wajib dibungkus tanda kutip "...".
  • Key bertanda kutip hanya bisa diakses menggunakan bracket notation object["key"].