javascript实现类似java中getClass()得到对象类名的方法

前端技术 2023/09/01 JavaScript

本文实例讲述了javascript实现类似java中getClass()得到对象类名的方法。分享给大家供大家参考。具体如下:

在javascript中没有能够返回特定类型名的函数

如一个对象 console.log(obj);
得到的是[object HtmlTableCellElement]如果想要一个函数能够返回HtmlTableCellElement js中默认没有这样的函数 可以自己实现一个

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; 
};

希望本文所述对大家的javascript程序设计有所帮助。

本文地址:https://www.stayed.cn/item/2996

转载请注明出处。

本站部分内容来源于网络,如侵犯到您的权益,请 联系我

我的博客

人生若只如初见,何事秋风悲画扇。