이 기사의 예에서는 javascript가 java의 getClass()와 유사한 메소드를 구현하여 객체 클래스 이름을 얻는 방법을 설명합니다. 참고할 수 있도록 모든 사람과 공유하세요. 세부 내용은 다음과 같습니다.
자바스크립트에는 특정 유형 이름을 반환할 수 있는 함수가 없습니다
객체처럼 console.log(obj);
얻는 것은 [객체 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 프로그래밍 설계에 도움이 되기를 바랍니다.