CoffeeScript - Objek

Objek di CoffeeScript mirip dengan yang ada di JavaScript. Ini adalah kumpulan properti, di mana properti menyertakan kunci dan nilai yang dipisahkan oleh titik koma (:). Singkatnya, objek CoffeeScript adalah kumpulan pasangan nilai kunci. Objek didefinisikan menggunakan kurung kurawal, objek kosong direpresentasikan sebagai{}.

Sintaksis

Diberikan di bawah ini adalah sintaks dari sebuah objek di CoffeeScript. Di sini, kami menempatkan pasangan nilai kunci dari objek di dalam tanda kurung kurawal dan dipisahkan menggunakan koma (,).

object ={key1: value, key2: value,......keyN: value}

Contoh

Berikut adalah contoh mendefinisikan sebuah objek di CoffeeScript. Simpan kode ini dalam file dengan namaobjects_example.coffee

student = {name: "Mohammed", age: 24, phone: 9848022338 }

Buka command prompt dan kompilasi file .coffee seperti yang ditunjukkan di bawah ini.

> coffee -c objects_example.coffee

Saat menyusun, ini memberi Anda JavaScript berikut.

// Generated by CoffeeScript 1.10.0
(function() {
  var student;

  student = {
    name: "Mohammed",
    age: 24,
    phone: 9848022338
  };

}).call(this);

Sama seperti dalam array, kita dapat menghapus koma dengan menentukan pasangan nilai kunci di baris baru seperti yang ditunjukkan di bawah ini.

student = {
  name: "Mohammed" 
  age: 24
  phone: 9848022338 
  }

Lekukan, bukan tanda kurung kurawal

Sama seperti pernyataan blok lainnya di CoffeeScript, kita dapat menggunakan lekukan alih-alih tanda kurung kurawal {} seperti yang ditunjukkan pada contoh berikut.

Contoh

Kita dapat menulis ulang contoh di atas tanpa tanda kurung kurawal seperti yang ditunjukkan di bawah ini.

student = 
  name: "Mohammed" 
  age: 24
  phone: 9848022338

Objek bersarang

Di CoffeeScript, kita dapat menulis objek di dalam objek.

Contoh

Contoh berikut menunjukkan objek bersarang di CoffeeScript. Simpan kode ini dalam file dengan namanested_objects.coffee

contact =
  personal:
    email: "[email protected]"
    phone:  9848022338
  professional:
    email: "[email protected]"
    phone:  9848033228

Buka command prompt dan kompilasi file .coffee seperti yang ditunjukkan di bawah ini.

> coffee -c nested_objects.coffee

Saat menyusun, ini memberi Anda JavaScript berikut.

// Generated by CoffeeScript 1.10.0
(function() {
  var contact;

  contact = {
    personal: {
      email: "[email protected]",
      phone: 9848022338
    },
    professional: {
      email: "[email protected]",
      phone: 9848033228
    }
  };

}).call(this);

Pemahaman atas objek

Untuk melakukan iterasi terhadap isi suatu objek, kita dapat menggunakan pemahaman. Iterasi konten objek sama dengan iterasi konten array. Dalam objek, karena kita harus mengambil dua kunci elemen dan nilai kita akan menggunakan dua variabel.

Contoh

Berikut ini adalah contoh yang menunjukkan cara mengulang konten suatu objek menggunakan pemahaman. Simpan kode ini dalam file dengan namaobject_comprehensions.coffee

student = 
  name: "Mohammed" 
  age: 24
  phone: 9848022338 

console.log key+"::"+value for key,value of student

Buka command prompt dan kompilasi file .coffee seperti yang ditunjukkan di bawah ini.

> coffee -c object_comprehensions.coffee

Saat menyusun, ini memberi Anda JavaScript berikut.

// Generated by CoffeeScript 1.10.0
(function() {
  var key, student, value;

  student = {
    name: "Mohammed",
    age: 24,
    phone: 9848022338
  };

  for (key in student) {
    value = student[key];
    console.log(key(+"::" + value));
  }

}).call(this);

Sekarang, buka command prompt lagi dan jalankan file CoffeeScript seperti yang ditunjukkan di bawah ini.

> coffee object_comprehensions.coffee

Saat menjalankan, file CoffeeScript menghasilkan keluaran berikut.

name::Mohammed
age::24
phone::9848022338

Array Objek

Di CoffeeScript, array juga bisa berisi objek seperti yang ditunjukkan di bawah ini.

a = [
     object1_key1: value
     object1_key2: value
     object1_key3: value
  ,
     object2_key1: value
     object2_key2: value
     object2_key3: value
]

Contoh berikut menunjukkan cara mendefinisikan array objek. Kami hanya dapat mencantumkan pasangan nilai kunci dari objek yang kami inginkan dalam array dengan memisahkannya menggunakan koma(,).

students =[  
    name: "Mohammed" 
    age: 24
    phone: 9848022338 
  ,  
    name: "Ram" 
    age: 25
    phone: 9800000000 
  ,  
    name: "Ram" 
    age: 25
    phone: 9800000000   
 ]  
console.log student for student in students

Buka command prompt dan kompilasi file .coffee seperti yang ditunjukkan di bawah ini.

c:\> coffee -c array_of_objects.coffee

Saat menyusun, ini memberi Anda JavaScript berikut.

// Generated by CoffeeScript 1.10.0
(function() {
  var i, len, student, students;

  students = [
    {
      name: "Mohammed",
      age: 24,
      phone: 9848022338
    }, {
      name: "Ram",
      age: 25,
      phone: 9800000000
    }, {
      name: "Ram",
      age: 25,
      phone: 9800000000
    }
  ];

  for (i = 0, len = students.length; i < len; i++) {
    student = students[i];
    console.log(student);
  }

}).call(this);

Sekarang, buka command prompt lagi dan jalankan file CoffeeScript seperti yang ditunjukkan di bawah ini.

c:\> coffee array_of_objects.coffee

Saat menjalankan, file CoffeeScript menghasilkan keluaran berikut.

{ name: 'Mohammed', age: 24, phone: 9848022338 }
{ name: 'Ram', age: 25, phone: 9800000000 }
{ name: 'Ram', age: 25, phone: 9800000000 }

Kata Kunci yang Dicadangkan

JavaScript tidak mengizinkan kata kunci yang dipesan sebagai nama properti suatu objek, jika kita ingin menggunakannya, kita harus membungkusnya menggunakan tanda kutip ganda " ".

Contoh

Perhatikan contoh berikut. Di sini kami telah membuat properti dengan namaclass, yang merupakan kata kunci yang dipesan. Simpan kode ini dalam file dengan namareserved_keywords.coffee

student ={ 
  name: "Mohammed" 
  age: 24
  phone: 9848022338
  class: "X"
  }
console.log key+"::"+value for key,value of student

Buka command prompt dan kompilasi file .coffee seperti yang ditunjukkan di bawah ini.

c:\> coffee -c reserved_keywords.coffee

Saat menyusun, ini memberi Anda JavaScript berikut. Di sini Anda dapat mengamati bahwa kompiler CoffeeScript membungkus kelas kata kunci dengan tanda kutip ganda atas nama kami.

// Generated by CoffeeScript 1.10.0
(function() {
  var key, student, value;

  student = {
    name: "Mohammed",
    age: 24,
    phone: 9848022338,
    "class": "X"
  };

  for (key in student) {
    value = student[key];
    console.log(key + "::" + value);
  }

}).call(this);

Sekarang, buka command prompt lagi dan jalankan file CoffeeScript seperti yang ditunjukkan di bawah ini.

c:\> coffee array_of_objects.coffee

Saat menjalankan, file CoffeeScript menghasilkan keluaran berikut.

name::Mohammed
age::24
phone::9848022338
class::X