Odpowiedz
z bloga jQuery:
Wewnątrz jQuery odkryliśmy kilka sytuacji, w których musimy wiedzieć, jeśli argument jest numeryczny, albo będzie z powodzeniem konwertowane na liczby, czy jest jakiś inny typ. Postanowiliśmy napisać i udokumentować jQuery.isNumeric(), ponieważ jest to przydatne narzędzie. Przekaż go jako argument dowolnego typu i zwraca wartość true lub false, jeśli jest to właściwe.
jQuery.isNaN(): funkcja ta Nieudokumentowana narzędzie zostało usunięte. Było to mylące, ponieważ zawłaszczyło nazwę wbudowanej funkcji JavaScript, ale nie miało tej samej semantyki. Nowa funkcja jQuery.isNumeric() służy podobnemu celowi, ale ma tę zaletę, że jest udokumentowana i obsługiwana. Pomimo, że jQuery.isNaN() jest nieudokumentowane, używało go kilka projektów na Github. Skontaktowaliśmy się z nimi i poprosiliśmy o użycie jQuery.isNumeric() lub innego rozwiązania.
Zobacz także bilet: http://bugs.jquery.com/ticket/10478
jQuery za isNumeric()
sprawdza czy wartość jest liczbą lub mogą być konwertowane na liczby.
EDIT
Aby dokładniej wyjaśnić co isNan()
robi (i co za wartość NaN jest):
NAN, co oznacza "not-a-number", klasyfikowany jest jako prymitywny wartość przez standard ECMA-262 i wskazuje, że określona wartość nie jest liczbą prawną. Funkcja zwraca wartość true, jeśli argument nie jest liczbą i fałszem, jeśli argumentem jest liczba.
Klasycznym przykładem NaN jest zero dzieli się przez zero, 0/0
Code:
document.write(isNaN("Ima String"))
document.write(isNaN(0/0))
document.write(isNaN("348"))
document.write(isNaN(348))
Output:
true
true
false
false
http://www.devguru.com/technologies/ecmascript/quickref/isnan.html
Semi offtopic, ale związane jest this short talk
Myślę, że OP odwołuje się do macierzystej funkcji JS, 'isNaN()' - nie wersji jQuery. –
@KirkWoll: zaktualizowano – PeeHaa
Twoja aktualizacja jest sprzeczna z komentarzem do powyższego komentarza. I z tego co mogę zebrać, Brygada jest prawidłowa. –
Jak mówi PeeHaa, $.isNumeric()
kontrole czy wartość jest liczbą, czy można ją przekonwertować na liczbę, isNaN()
sprawdza wyłącznie, czy wartość wynosi NaN
.
Oto przydatny wykres porównanie, który wykorzystuje przykłady jQuery documentation's (porównując $.isNumeric()
do !isNaN
dla łatwiejszego porównania): http://jsfiddle.net/eghE9/
Dziękuję bardzo Juhanie. Włączyłem go teraz do mojej matrycy przykładów. http://www.phillipsenn.com/Matrix/jQuery/Utilities/jQuery.isNumeric.cfm –
Dobrze, dziękuję ... nauczyłeś się czegoś nowego;) –
Jeśli ta odpowiedź zaczyna się od "jak mówi PeeHaa" i zawiera znacznie mniej informacje niż jego odpowiedź, i został opublikowany później, dlaczego został przyjęty na rzecz odpowiedzi PeeHaa? @Phillip –
- 1. Zmiana jQuery w isNumeric (w najnowszych wersjach)?
- 2. JQuery .isNumeric
- 3. Dlaczego isnumeric nie działa?
- 4. isnumeric() z PostgreSQL
- 5. portowanie isnan do C++ 11
- 6. isNaN() javascript, numer 2 przecinkami
- 7. Czy GCC może zoptymalizować isnan (x) || isnan (y) do isunordered (x, y)?
- 8. Który z nich jest odpowiednikiem metody isnan()?
- 9. T-SQL IsNumeric() i Linq-to-SQL
- 10. SQL Server IsNumeric() równowartość w Amazon redshifcie
- 11. Jak sprawdzić isNumeric/IsNumber w JSTL
- 12. SQL IsNumeric Zwraca prawda ale Raporty SQL „konwersja Failed”
- 13. IsNumeric ('100e00') zwraca tak podczas lsisnumeric ('100e00') nie zwraca
- 14. Czy jest to błąd w funkcjach IsNumeric i CDbl() VBA?
- 15. metoda vs funkcja vs procedura vs klasa?
- 16. body.scrollTop vs documentElement.scrollTop vs window.pagYOffset vs window.scrollY
- 17. Opa vs Dart vs Haxe vs coffeescript
- 18. VS 2008 vs VS 2008 Express
- 19. Strona vs Extent vs. Segment vs. Tabele
- 20. Crystalspace vs. Irrlicht vs. .....?
- 21. NetSqlAzMan vs AzMan vs (?????)
- 22. SpiderMonkey vs JavaScriptCore vs?
- 23. Numpy isnan() kończy się niepowodzeniem na tablicy elementów pływających (z pandy korzystającej z ramki danych)
- 24. Dlaczego GCC implementuje isnan() bardziej wydajnie dla C++ <cmath> niż C <math.h>?
- 25. Czy isnan w std :: namespace? Bardziej ogólnie, kiedy jest std :: konieczny, opcjonalny lub którego należy unikać?
- 26. Klasa vs pakiet vs moduł vs komponent vs kontener kontra serwis vs platforma w świecie Java
- 27. Zmierz czas w Linuksie - czas vs zegar vs getrusage vs clock_gettime vs gettimeofday vs timespec_get?
- 28. IDataErrorInfo vs ValidationRule vs Exception
- 29. Boo vs C# vs Python?
- 30. DbConnection vs OleDbConnection vs OdbcConnection
Whats your zapytań? nie jest dla mnie jasne. –
'isNaN()' specjalnie sprawdza rzeczywistą wartość 'NaN', bardzo różne. – Orbling
@Arif - wydaje się całkiem jasne, że OP pyta, jaka jest różnica między '$ .isNumeric' i' isNaN() '. –