Rumah  >  Artikel  >  hujung hadapan web  >  Bagaimana untuk menyemak sama ada pembina objek ialah objek JavaScript?

Bagaimana untuk menyemak sama ada pembina objek ialah objek JavaScript?

WBOY
WBOYke hadapan
2023-09-15 08:25:05594semak imbas

如何检查对象的构造函数是否是 JavaScript 对象?

Dalam artikel ini, kami akan menyemak sama ada pembina objek ialah objek JavaScript. Sifat pembina mana-mana pembolehubah JavaScript mengembalikan rujukan kepada pembina Object yang mencipta objek contoh. Nilai sifat ini adalah rujukan kepada fungsi itu sendiri.

Semua objek mempunyai atribut pembina, dan objek yang dicipta tanpa pembina akan mempunyai atribut pembina yang menunjuk kepada jenis pembina objek asas tersebut.

Untuk menyemak sama ada pembina nilai yang disediakan ialah objek yang dicipta oleh pembina objek, kita perlu membandingkan nilai sifat pembina objek dengan rujukan pembina objek yang sepadan. Harta pembina mengembalikan rujukan kepada pembina yang mencipta contoh.

Syntax

Berikut ialah sintaks fungsi untuk menyemak sama ada pembina objek ialah Objek

function check(obj) {
   return obj.constructor === Object ? true : false
}

Contoh

Dalam atur cara berikut, kami menyemak sama ada pembina enam objek ialah objek JavaScript.

<html>
<body>
   <h3 >Check if Constructor is Object</h3>
   <p> Click on the check button all test cases </p>
   <p>Test Case 1: {} </p>
   <p>Constructor is Object:
      <span id="testcase1"> </span> </p>
   <p>Test Case 2: new Number(3)</p>
   <p>Constructor is Object:
      <span id="testcase2"> </span> </p>
   <p>Test Case 3: new Object </p>
   <p>Constructor is Object:
      <span id="testcase3"> </span> </p>
   <p>Test Case 4: new Object() </p>
   <p>Constructor is Object:
      <span id="testcase4"> </span> </p>
   <p> Test Case 5: [] </p>
   <p>Constructor is Object:
      <span id="testcase5"> </span> </p>
   <p>Test Case 6: "Object Constructor" </p>
   <p>Constructor is Object:
      <span id="testcase6"> </span> </p>
   <button onclick="runTestCases()"> Check </button>
   <script>

      // This function will check if created by Object constructor
      function check(obj) {
         return obj.constructor === Object ? true : false
      }
      function runTestCases() {
         document.getElementById("testcase1").textContent =
            check({});
         document.getElementById("testcase2").textContent =
            check(new Number(3));

         document.getElementById("testcase3").textContent =
            check(new Object);

         document.getElementById("testcase4").textContent =
            check(new Object());

         document.getElementById("testcase5").textContent =
            check([]);

         document.getElementById("testcase6").textContent =
            check("Object Conctructor");
      }
   </script>
</body>
</html>

Apabila anda mengklik pada butang "Semak", ​​semua kes ujian akan berjalan dan menunjukkan output sebagai benar atau palsu. Seperti yang kita lihat dalam kod di atas, jika objek dicipta oleh pembina objek, hasilnya akan ditunjukkan sebagai benar, jika tidak ia akan dipaparkan sebagai palsu. Dalam kod di atas, kes ujian 1, 3, dan 4 menghasilkan benar kerana semuanya dibuat menggunakan pembina objek. Di sini, sifat pembina objek mengembalikan nilai yang sama dengan objek dalam kes 1, 3, dan 4.

Contoh (Cari pembina objek)

Dalam atur cara di bawah, kita dapati pembina empat objek berbeza yang dicipta menggunakan kaedah berbeza. Kami menggunakan sifat Object.constructor untuk mencari pembina objek.

rreeee

Atas ialah kandungan terperinci Bagaimana untuk menyemak sama ada pembina objek ialah objek JavaScript?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Artikel ini dikembalikan pada:tutorialspoint.com. Jika ada pelanggaran, sila hubungi admin@php.cn Padam