Возвращаясь к проверке типа данных

Об альтернативе typeof я уже писал в заметке « Проверка типа данных в JavaScript». А недавно на просторах интернета нашел ещё один аналогичный вариант такой функции.


var toType = function (obj) {
    return ({}).toString.call(obj).match(/\s([a-zA-Z]+)/)[1].toLowerCase();
}

Стоить только заметить, что он примерно в 2 раза медленнее, чем вариант со slice . Всё-таки регулярные выражения не спасает даже кеширование.