Все функции являются вызываемыми объектами, но не все вызываемые объекты являются функциями. Приведите пример вызываемого объекта который не является функцией.
Артём, очень странная информация. Автор утверждает, что метод не является функцей, тем временем метод это принадлежащая какому-либо объекту функция, и всё. Я бы не стал изучать источник, где пишут «броузер», говорят про IE ниже 8 версии и неправильно пишут методы: Document.getElementsByld. Как минимум, он неактуальный.
Артём, ну видите, всё равно литература тех времён уже неактуальна. Например, автор пишет что RegExp некоторые браузеры реализуют как объект, то есть и с помощью typeof это можно проверить. Через browserstack проверил на IE11/10/8/7/5, FF, Chrome, Opera, на двух BlackBerry телефончиках, на iPhone и старом iPad, везде typeof RegExp возвращает function.
JS всё-таки лучше у Ильи Кантора на learn.javascript.ru изучать, всегда свежая инфа.
Артём, они отличаются только некоторыми сахарными фичами, каждая из которых реализуема и с применением предыдущих стандартов, так что любой полноценный учебник по актуальному JS вам должен дать информацию и о старом ES, и о новом: если в учебнике речь только о ES5, то он неактуален; если только о следующих стандартах - то это не учебник, а просто статейка о новых фичах ECMAScript. То есть любой полноценный учебник должен охватывать эту область.
Может вам ещё ответят по теме, но лично мне всегда казалось все вызываемые объекты являются функциями, собственно потому что способность быть вызываемой это и есть ключевое отличие функции от любого другого объекта.
Никита Полевой, Спасибо, в общем продолжу читать книгу Д. Фленагана про ES5, а потом найду статейки о изменениях в новых версиях. Тем более ES5 лишь на ступень ниже чем ES6, не слишком уж и неактуально.