Собственно вопрос такой: справедливо ли считать каждое порождение в JavaScript объектом (кроме блоков кода)? В общем виде функции, массивы и примитивы создаются ведь с помощью конструкторов. То есть создаются объекты со своими методами, свойствами и т.д. Или есть принципиальная разница?