Могу ли я использовать constructor.name для определения типов в JavaScript

Могу ли я использовать свойство конструктора для определения типов в JavaScript? Или я должен кое-что об этом знать.

Например: var a = {}; a.constructor.name; // выводит Object

или var b = 1; b.constructor.name; // выводит число

или var d = new Date (); d.constructor.name; // выводит дату, а не объект

или var f = new Function (); f.constructor.name; // выводит функцию, а не объект

, только если использовать ее с аргументами arguments.constructor.name; // выводит Object как в первом примере

Я довольно часто вижу, что разработчики используют: Object.prototype.toString.call ([]) или

Object.prototype.toString.call ({})

6
задан orustam 12 August 2011 в 11:11
поделиться