Das Beispiel in diesem Artikel beschreibt, wie Javascript eine Methode ähnlich getClass() in Java implementiert, um den Objektklassennamen zu erhalten. Teilen Sie es als Referenz mit allen. Die Details lauten wie folgt:
Es gibt keine Funktion in JavaScript, die einen bestimmten Typnamen zurückgeben kann
Wie ein Objekt console.log(obj);
Was Sie erhalten, ist [object HtmlTableCellElement]. Wenn Sie eine Funktion wünschen, die HtmlTableCellElement zurückgeben kann, gibt es in js standardmäßig keine solche Funktion
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; };