Объект на основе функции 
		
		
		
		Создал объект на основе функции: 
	
function person(){
this.sex="";
this.name="";
}
var persona=new person();
Если смотреть в отладчике (VS 2008), то указан тип - Object, (person). Как узнать, на основе какой функции создан объект из свойств persona?  | 
	
		
 
<script>
function person(){
this.sex="";
this.name="";
};
var persona=new person();
alert(persona.constructor)
</script>
Пользуйся отладчиком в браузере таких вопросов не будет  | 
	
		
 
<script>
  function person() {
    this.sex = "";
    this.name = "";
  }
  var persona = new person();
  var reg = /^.*?\s(.*)\(/
  alert("Function name - " + reg.exec(persona.constructor.toString())[1]);
  alert("Function name - " + persona.constructor.name);
</script>
<script>
  function person() {
    this.sex = "";
    this.name = function () {
      return this.constructor.name;
    }
  }
  var persona = new person();;
  alert("Function name - " + persona.name());
</script>
 | 
	
		
 Дополню ответ вышел, если constructor  был перезаписан, так же можно посмотреть через не стандартное свойство __proto__ работает в хроме, лисе и опере. 
	 | 
	
		
 
alert(({}).constructor.name);
alert(([]).constructor.name);
alert((/1/).constructor.name);
а вообще сам вопрос не корректен и еще дофига замечаний но писать лень :)  | 
	
		
 Вот так работает: 
	
function Fu(){this.a=1}
ob=new Fu()
console.log(ob.constructor.name) // Fu
А вот так нет, между прочим. 
Fu=function(){this.a=1}
ob=new Fu()
console.log(ob.constructor.name) //
Проверил в ноде и в хроме.  | 
	
		
 foo, Ну так вторая - безымянная. Fu - в таком случае просто переменная. 
	 | 
	
		
 Цитата: 
	
 PS: сейчас рекомендуется юзать Object.getPrototypeOf / Object.setPrototypeOf, где такое поддерживается.  | 
	
		
 Цитата: 
	
 
Fu = function Fu() { ... };
 | 
	
		
 Спасибо всем! 
	Poznakomlus, использовал Ваш регекс  | 
| Часовой пояс GMT +3, время: 10:15. |