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文字上下滚动的实现方法
Mar 22 Javascript
js获取光标位置和设置文本框光标位置示例代码
Jan 09 Javascript
JS中call/apply、arguments、undefined/null方法详解
Feb 15 Javascript
Jquery和JS获取ul中li标签的实现方法
Jun 02 Javascript
js无法获取到html标签的属性的解决方法
Jul 26 Javascript
JS实现将数字金额转换为大写人民币汉字的方法
Aug 02 Javascript
JS代码实现百度地图 画圆 删除标注
Oct 12 Javascript
浅析js的模块化编写 require.js
Dec 07 Javascript
通过jquery toggleClass()属性制作文章段落更改背景颜色
May 21 jQuery
js与jquery获取input输入框中的值实例讲解
Feb 27 jQuery
详解Vue串联过滤器的使用场景
Apr 30 Javascript
vue 自定义的组件绑定点击事件
Apr 21 Vue.js
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
Symfony数据校验方法实例分析
2015/01/26 PHP
PHP判断函数是否被定义的方法
2019/06/21 PHP
syntaxhighlighter 使用方法
2007/07/02 Javascript
Jquery为单选框checkbox绑定单击click事件
2012/12/18 Javascript
javascript限制文本框只允许输入数字(曾经与现在的方法对比)
2013/01/18 Javascript
js Date概念详细介绍
2013/11/22 Javascript
JavaScript中连接操作Oracle数据库实例
2015/04/02 Javascript
一看就懂:jsonp详解
2015/06/01 Javascript
js实现适用于素材网站的黑色多级菜单导航条效果
2015/08/24 Javascript
js判断复选框是否选中及选中个数的实现代码
2016/05/30 Javascript
js微信分享API
2020/10/11 Javascript
深入浅析search 搜索框的写法
2016/08/02 Javascript
jQuery插件版本冲突的处理方法分析
2017/01/16 Javascript
浅谈jQuery中事情的动态绑定
2017/02/12 Javascript
使用Angular CLI进行Build(构建)和Serve详解
2018/03/24 Javascript
JavaScript面向对象编程小游戏---贪吃蛇代码实例
2019/05/15 Javascript
vue项目打包之开发环境和部署环境的实现
2020/04/23 Javascript
vue实现移动端input上传视频、音频
2020/08/18 Javascript
Unicode和Python的中文处理
2017/03/19 Python
Python正则表达式分组概念与用法详解
2017/06/24 Python
python中的随机函数小结
2018/01/27 Python
详解Python最长公共子串和最长公共子序列的实现
2018/07/07 Python
python for和else语句趣谈
2019/07/02 Python
使用python实现对元素的长截图功能
2019/11/14 Python
python 实现生成均匀分布的点
2019/12/05 Python
Python生成个性签名图片获取GUI过程解析
2019/12/16 Python
使用 Python 遍历目录树的方法
2020/02/29 Python
澳大利亚便宜的家庭购物网站:CrazySales
2018/02/06 全球购物
报关员个人职业生涯规划书
2014/03/12 职场文书
简历自荐信范文
2015/03/09 职场文书
安娜卡列尼娜观后感
2015/06/11 职场文书
致运动员的广播稿
2015/08/19 职场文书
2016教师廉洁从教心得体会
2016/01/13 职场文书
2016年教师党员公开承诺书
2016/03/24 职场文书
Rust 连接 PostgreSQL 数据库的详细过程
2022/01/22 PostgreSQL
解决 redis 无法远程连接
2022/05/15 Redis