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


Posted in Javascript onJuly 27, 2015

本文实例讲述了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程序设计有所帮助。

Javascript 相关文章推荐
Jquery利用mouseenter和mouseleave实现鼠标经过弹出层且可以点击
Feb 12 Javascript
函数式 JavaScript(一)简介
Jul 07 Javascript
JavaScript验证18位身份证号码最后一位正确性的实现代码
Aug 07 Javascript
使用Chrome调试JavaScript的断点设置和调试技巧
Dec 16 Javascript
javascript面向对象之访问对象属性的两种方式分析
Jan 13 Javascript
JS实现字符串转日期并比较大小实例分析
Dec 09 Javascript
JavaScript性能优化之函数节流(throttle)与函数去抖(debounce)
Aug 11 Javascript
关于json字符串与实体之间的严格验证代码
Nov 10 Javascript
如何清除IE10+ input X 文本框的叉叉和密码输入框的眼睛图标
Dec 21 Javascript
搭建vue开发环境
Jul 19 Javascript
jQuery实现B2B网站后台管理系统侧导航
Jul 08 jQuery
Javascript的promise,async和await的区别详解
Mar 24 Javascript
AngularJS的一些基本样式初窥
Jul 27 #Javascript
javascript实现网页子页面遍历回调的方法(涉及 window.frames、递归函数、函数上下文)
Jul 27 #Javascript
JavaScript数组对象实现增加一个返回随机元素的方法
Jul 27 #Javascript
使用HTML+CSS+JS制作简单的网页菜单界面
Jul 27 #Javascript
Javascript验证Visa和MasterCard信用卡号的方法
Jul 27 #Javascript
JavaScript实现自动对页面上敏感词进行屏蔽的方法
Jul 27 #Javascript
javascript实现类似于新浪微博搜索框弹出效果的方法
Jul 27 #Javascript
You might like
基于thinkPHP实现的微信自定义分享功能示例
2016/09/23 PHP
PHP类与对象后期静态绑定操作实例详解
2018/12/20 PHP
详解阿里云视频直播PHP-SDK接入教程
2020/07/09 PHP
脚本安需导入(装载)的三种模式的对比
2007/06/24 Javascript
js电信网通双线自动选择技巧
2008/11/18 Javascript
Extjs学习笔记之八 继承和事件基础
2010/01/08 Javascript
得到jQuery detach()后节点中的某个值实现代码
2013/02/05 Javascript
js调用后台servlet方法实例
2013/06/09 Javascript
网站404页面3秒后跳到首页的实例代码
2013/08/16 Javascript
Javascript中匿名函数的多种调用方式总结
2013/12/06 Javascript
addEventListener 的用法示例介绍
2014/05/07 Javascript
AngularJS入门教程之过滤器详解
2016/08/19 Javascript
Webpack之tree-starking 解析
2018/09/11 Javascript
详解如何理解vue的key属性
2019/04/14 Javascript
详解50行代码,Node爬虫练手项目
2019/04/22 Javascript
ant-design-vue 快速避坑指南(推荐)
2020/01/21 Javascript
JS Web Flex弹性盒子模型代码实例
2020/03/10 Javascript
Vue实现浏览器打印功能的代码
2020/04/17 Javascript
Python设计模式编程中Adapter适配器模式的使用实例
2016/03/02 Python
实例讲解Python中global语句下全局变量的值的修改
2016/06/16 Python
python 实现倒排索引的方法
2018/12/25 Python
Python 隐藏输入密码时屏幕回显的实例
2019/02/19 Python
Win10下Python3.7.3安装教程图解
2019/07/08 Python
使用 django orm 写 exists 条件过滤实例
2020/05/20 Python
Python 如何定义匿名或内联函数
2020/08/01 Python
Expedia印度:您的一站式在线旅游网站
2017/08/24 全球购物
技校生自我鉴定
2013/12/08 职场文书
双语教学实施方案
2014/03/23 职场文书
经销商订货会主持词
2014/03/27 职场文书
幼儿园新年寄语
2014/04/03 职场文书
社区春季防火方案
2014/06/02 职场文书
群众路线教育实践活动自我剖析思想汇报
2014/10/04 职场文书
2014年人事行政工作总结
2014/12/03 职场文书
解除同居协议书
2015/01/29 职场文书
医德医风个人总结
2015/02/28 职场文书
MySQL 分区表中分区键为什么必须是主键的一部分
2022/03/17 MySQL