Rumah  >  Artikel  >  hujung hadapan web  >  JavaScript melaksanakan kaedah yang serupa dengan getClass() dalam Java untuk mendapatkan kemahiran name_javascript kelas objek

JavaScript melaksanakan kaedah yang serupa dengan getClass() dalam Java untuk mendapatkan kemahiran name_javascript kelas objek

WBOY
WBOYasal
2016-05-16 15:48:531715semak imbas

Contoh dalam artikel ini menerangkan cara javascript melaksanakan kaedah yang serupa dengan getClass() dalam java untuk mendapatkan nama kelas objek. Kongsikan dengan semua orang untuk rujukan anda. Butirannya adalah seperti berikut:

Tiada fungsi dalam JavaScript yang boleh mengembalikan nama jenis tertentu

Seperti konsol objek.log(obj);
Apa yang anda dapat ialah [objek HtmlTableCellElement]. Jika anda mahukan fungsi yang boleh mengembalikan HtmlTableCellElement Tiada fungsi sedemikian secara lalai dalam js anda boleh melaksanakannya sendiri

var getObjectClass = function (obj) {
 if (obj && obj.constructor && obj.constructor.toString()) {
   /*
    * for browsers which have name property in the constructor
    * of the object,such as chrome 
    */
   if(obj.constructor.name) {
    return obj.constructor.name;
   }
   var str = obj.constructor.toString();
   /*
    * executed if the return of object.constructor.toString() is 
    * "[object objectClass]"
    */
   if(str.charAt(0) == '[')
   {
     var arr = str.match(/\[\w+\s*(\w+)\]/);
   } else {
     /*
      * executed if the return of object.constructor.toString() is 
      * "function objectClass () {}"
      * for IE Firefox
      */
     var arr = str.match(/function\s*(\w+)/);
   }
   if (arr && arr.length == 2) {
      return arr[1];
   }
  }
  return undefined; 
};

Saya harap artikel ini akan membantu reka bentuk pengaturcaraan JavaScript semua orang.

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn