Per Crockford, The Good Parts
typeof jest poprawny dla funkcji, łańcucha, liczby, wartości logicznej i niezdefiniowany. null i tablica są niepoprawnie zgłaszane jako obiekt.
Dlaczego więc nie używać typeof do przypadków, w których działa? Zawsze jest to szybsze, dlatego zastanawiam się, dlaczego nie jest to preferowane w tych przypadkach.
Szczególnie tutaj dla funkcji, ciągu i liczby.
http://underscorejs.org/docs/underscore.html#section-111
each(["Arguments", "Function", "String", "Number", "Date", "RegExp"], function(name) {
_["is" + name] = function(obj) {
return toString.call(obj) == "[object " + name + "]";
}; });
Odpowiedzi:
2 dla odpowiedzi № 1Celem tych owijek jest złapanie obiektów o wartości pudełkowej.
typeof new Number(1) === "object"