Rumah >hujung hadapan web >tutorial js >Sintaks objek dalam javascript
mata utama
atau atribut . Atribut digunakan untuk menggambarkan aspek tertentu objek. Sebagai contoh, atribut boleh menggambarkan panjang senarai, warna anjing, atau tarikh kelahiran seseorang.
Buat objek
Membuat objek dalam JavaScript adalah mudah. Bahasa ini menyediakan sintaks yang dipanggilnotasi literal objek untuk membuat objek dengan cepat. Teks objek diwakili dalam pendakap. Contoh berikut mencipta objek kosong tanpa atribut.
<code class="language-javascript">var object = {};</code>dalam pendakap, atribut dan nilai -nilainya ditentukan sebagai senarai pasangan kunci/nilai. Kunci boleh menjadi rentetan atau pengenal, manakala nilai boleh menjadi ungkapan yang sah. Senarai pasangan kunci/nilai dipisahkan oleh koma, dan setiap kunci dan nilai dipisahkan oleh kolon. Contoh berikut menggunakan notasi literal untuk membuat objek dengan tiga atribut. Atribut pertama Foo menyimpan nombor 1. Bar atribut kedua ditentukan menggunakan rentetan dan juga menyimpan nilai rentetan. BAZ harta ketiga menyimpan objek kosong.
<code class="language-javascript">var object = { foo: 1, "bar": "some string", baz: { } };</code>Sila perhatikan penggunaan ruang dalam contoh sebelumnya. Setiap atribut ditulis pada baris yang berasingan dan diinduksi. Seluruh objek boleh ditulis pada satu baris, tetapi kod yang ditulis dalam format ini lebih mudah dibaca. Ini terutama berlaku untuk objek dengan banyak sifat atau objek bersarang.
atribut akses
JavaScript menyediakan dua notasi untuk mengakses sifat objek. Yang pertama dan paling biasa dipanggil notasi titik . Dalam notasi Dot, harta itu diakses dengan memberikan nama objek tuan rumah, diikuti dengan tempoh (atau titik), dan kemudian nama harta. Contoh berikut menunjukkan cara membaca dan menulis sifat menggunakan notasi titik. Jika nilai tersimpan awal objek.foo adalah 1, nilainya akan menjadi 2 selepas melaksanakan pernyataan ini. Perhatikan bahawa jika object.foo tidak mempunyai nilai lagi, ia tidak akan ditentukan.
<code class="language-javascript">var object = {};</code>
Satu lagi sintaks untuk mengakses sifat objek dipanggil notasi pendakap persegi . Dalam notasi kurungan persegi, nama objek diikuti dengan satu set kurungan persegi. Dalam kurungan persegi, nama harta ditentukan sebagai rentetan. Contoh notasi titik sebelumnya telah ditulis semula di bawah untuk menggunakan notasi kurungan persegi. Walaupun kod mungkin kelihatan berbeza, ia bersamaan secara fungsional dengan contoh sebelumnya.
<code class="language-javascript">var object = { foo: 1, "bar": "some string", baz: { } };</code>
Notasi kurungan persegi lebih ekspresif daripada notasi DOT kerana ia membolehkan pembolehubah menentukan semua atau sebahagian daripada nama atribut. Ini mungkin kerana jurubahasa JavaScript secara automatik menukar ungkapan dalam kurungan persegi ke dalam rentetan dan kemudian mengambil sifat yang sepadan. Contoh berikut menunjukkan cara membuat nama atribut secara dinamik menggunakan notasi kurungan persegi. Dalam contoh ini, nama atribut FOO dicipta dengan menggabungkan kandungan pembolehubah F dengan rentetan "OO".
<code class="language-javascript">object.foo = object.foo + 1;</code>
Notasi kurungan persegi juga membolehkan nama atribut mengandungi aksara yang dilarang dalam notasi titik. Sebagai contoh, pernyataan berikut benar -benar sah dalam notasi kurungan persegi. Walau bagaimanapun, jika anda cuba membuat nama harta yang sama dalam notasi DOT, anda akan menghadapi ralat sintaks.
<code class="language-javascript">object["foo"] = object["foo"] + 1;</code>
Ciri -ciri objek bersarang boleh diakses dengan menghubungkan titik -titik dan/atau rujukan pendakap persegi bersama -sama. Sebagai contoh, objek berikut mengandungi objek bersarang bernama BAZ, yang mengandungi objek lain yang bernama Foo, yang mempunyai harta bernama Bar yang menyimpan nilai 5.
<code class="language-javascript">var f = "f"; object[f + "oo"] = "bar";</code>
Ungkapan berikut mengakses bar harta bersarang. Ekspresi pertama menggunakan notasi titik, manakala ungkapan kedua menggunakan notasi kurungan persegi. Ekspresi ketiga menggabungkan dua notasi untuk mencapai hasil yang sama.
<code class="language-javascript">object["!@#$%^&*()."] = true;</code>
Ekspresi seperti yang ditunjukkan dalam contoh sebelumnya boleh menyebabkan kemerosotan prestasi jika digunakan dengan tidak betul. Ia mengambil masa untuk menilai setiap titik atau ekspresi pendakap persegi. Jika anda menggunakan harta yang sama beberapa kali, sebaiknya mengakses harta itu sekali dan kemudian simpan nilai dalam pembolehubah tempatan untuk digunakan dalam semua tujuan masa depan. Contoh berikut menggunakan bar beberapa kali dalam gelung. Walau bagaimanapun, bukannya membuang masa mengira nilai yang sama berulang kali, menyimpan bar dalam pembolehubah tempatan.
<code class="language-javascript">var object = { baz: { foo: { bar: 5 } } };</code>
Fungsi sebagai kaedah
Apabila fungsi digunakan sebagai harta objek, ia dipanggil kaedah . Seperti sifat, kaedah juga boleh ditentukan dalam notasi literal objek. Contoh berikut menunjukkan bagaimana untuk mencapai matlamat ini.
<code class="language-javascript">object.baz.foo.bar; object["baz"]["foo"]["bar"]; object["baz"].foo["bar"];</code>
Kaedah juga boleh dipanggil menggunakan notasi dot dan notasi kurungan persegi. Contoh berikut menggunakan kedua -dua notasi ini untuk memanggil kaedah SUM () dalam contoh sebelumnya.
<code class="language-javascript">var object = {};</code>
Tambah atribut dan kaedah
Notasi literal objek berguna untuk membuat objek baru, tetapi ia tidak dapat menambah sifat atau kaedah kepada objek yang ada. Mujurlah, menambah data baru ke objek adalah semudah membuat pernyataan tugasan. Contoh berikut mencipta objek kosong. Kemudian gunakan pernyataan tugasan untuk menambah dua atribut foo dan bar dan kaedah baz. Perhatikan bahawa contoh ini menggunakan notasi DOT, tetapi notasi kurungan persegi sama -sama berkesan.
<code class="language-javascript">var object = { foo: 1, "bar": "some string", baz: { } };</code>
Kesimpulan
Artikel ini memperkenalkan pengetahuan asas sintaks objek JavaScript. Adalah penting untuk menguasai kandungan ini kerana ia membentuk asas bagi seluruh bahasa. Mereka mengatakan bahawa anda perlu belajar berjalan sebelum anda dapat berlari. Kemudian, di dunia JavaScript, anda mesti terlebih dahulu memahami objek untuk memahami pengaturcaraan berorientasikan objek.
Soalan Lazim mengenai Sintaks Objek JavaScript (FAQ)
Dalam JavaScript, objek adalah koleksi pasangan nilai utama. Anda boleh mengakses nilai -nilai ini menggunakan notasi titik atau notasi kurungan persegi. Perwakilan DOT lebih langsung dan mudah dibaca. Gunakannya apabila anda mengetahui nama harta benda. Sebagai contoh, jika anda mempunyai objek yang dinamakan "orang" yang mempunyai harta yang bernama "Nama", anda boleh mengaksesnya seperti ini: person.name.
Sebaliknya, kurungan persegi lebih fleksibel. Ia membolehkan anda mengakses sifat menggunakan pembolehubah atau nama atribut yang mungkin tidak pengenal yang sah. Sebagai contoh, jika nama harta mengandungi ruang atau aksara khas, atau ia adalah nombor, anda boleh mengaksesnya seperti ini: orang ['nama harta'].
Anda boleh menambah sifat ke objek JavaScript yang sedia ada menggunakan notasi titik atau notasi kurungan persegi. Untuk notasi titik anda hanya perlu menggunakan objek sintaks.Property = nilai. Untuk notasi kurungan persegi, sintaks adalah objek ['property'] = nilai. Dalam kedua -dua kes, jika harta itu tidak wujud dalam objek, ia ditambah.
Anda boleh menggunakan pengendali "Padam" untuk memadam sifat dari objek JavaScript. Sintaks pengendali "Padam" adalah memadam Object.Property untuk Notasi Point dan Padam Objek ['Property'] untuk notasi kurungan persegi. Ini akan mengeluarkan atribut dan nilainya dari objek.
adalah fungsi yang disimpan sebagai harta objek. Mereka digunakan untuk melakukan operasi yang menggunakan data objek. Anda boleh menentukan kaedah dalam objek menggunakan sintaks fungsi seperti berikut: object.methodname = function () { / code /}.
anda boleh menggunakan "untuk ... dalam" gelung untuk melangkah ke atas sifat -sifat objek JavaScript. Gelung ini akan melangkah ke atas objek yang begitu banyak sifat, termasuk sifat -sifat yang diwarisi dari rantaian prototaip. Sintaks adalah seperti berikut: untuk (var harta dalam objek) { / code /}.
Kata kunci "ini" dalam objek JavaScript merujuk kepada objek yang dimiliki. Di dalam kaedah, "ini" merujuk kepada objek pemilik. Dalam pembina, "ini" merujuk kepada objek yang baru dibuat.
Pembina dalam JavaScript adalah fungsi khas yang digunakan untuk membuat objek jenis yang sama. Mereka dinamakan dalam huruf besar untuk membezakannya dari fungsi biasa. Kata kunci "baru" digunakan untuk memanggil pembina dan membuat objek baru.
Setiap objek JavaScript mempunyai prototaip. Prototaip juga merupakan objek, dan semua objek mewarisi sifat dan kaedah dari prototaipnya. Ini adalah ciri kuat JavaScript kerana ia membolehkan anda menambah sifat atau kaedah baru untuk contoh -contoh jenis objek.
anda boleh menggunakan kaedah "dalam" atau kaedah "HasownProperty" untuk memeriksa sama ada sifat wujud dalam objek JavaScript. Pengendali "dalam" mengembalikan benar jika harta itu wujud dalam objek atau rantaian prototaipnya. Kaedah "HasownProperty" mengembalikan benar hanya jika harta itu wujud dalam objek itu sendiri.
Pemusnahan objek dalam JavaScript adalah fungsi yang membolehkan anda mengekstrak sifat dari objek dan mengikatnya kepada pembolehubah. Ini boleh menjadikan kod anda lebih ringkas dan mudah dibaca. Sintaks adalah seperti berikut: var {property1, property2} = objek.
Atas ialah kandungan terperinci Sintaks objek dalam javascript. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!