javascript實現類似java中getClass()得到對象類名的方法
更新時間:2015年07月27日 17:56:28 作者:open-source
這篇文章主要介紹了javascript實現類似java中getClass()得到對象類名的方法,實例分析了javascript實現java中getClass方法的使用技巧,具有一定參考借鑒價值,需要的朋友可以參考下
本文實例講述了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高級程序設計閱讀筆記(五) ECMAScript中的運算符(一)
ECMAScript中的運算符,學習js的朋友可以看看2012-02-02

