- 01
- 02
- 03
- 04
- 05
- 06
- 07
- 08
- 09
- 10
- 11
- 12
function isInteger(s)
{
var i;
for (i = 0; i < s.length; i++)
{
// Check that current character is number.
var c = s.charAt(i);
if (((c < "0") || (c > "9"))) return false;
}
// All characters are numbers.
return true;
}
demotivator 15.11.2011 20:10 # 0
Lure Of Chaos 15.11.2011 20:16 # 0
// All characters are numbers.
супер, конечно
ling 16.11.2011 09:42 # +3
Govnocoder#0xFF 15.11.2011 20:19 # −2
guestGovno 16.11.2011 12:58 # 0
Govnocoder#0xFF 16.11.2011 15:13 # 0
roman-kashitsyn 16.11.2011 15:27 # 0
Oh, really?
Govnocoder#0xFF 16.11.2011 15:30 # 0
eth0 16.11.2011 18:16 # +1
Govnocoder#0xFF 16.11.2011 20:18 # +2
lucidfoxGovno 16.11.2011 20:32 # −1
Govnocoder#0xFF 16.11.2011 20:34 # 0
lucidfoxGovno 17.11.2011 18:33 # −2
dev6alexander 17.11.2011 07:32 # 0
lucidfoxGovno 16.11.2011 20:31 # +1
Уже есть:
http://ideone.com/uLtzc
guestGovno 17.11.2011 04:20 # −2
HottDogg 15.11.2011 20:37 # +1
HottDogg 15.11.2011 20:41 # +5
Govnocoder#0xFF 15.11.2011 20:43 # +1
HottDogg 15.11.2011 20:44 # 0
Narsul 17.11.2011 17:32 # 0
Лучше сделать вот так:
HottDogg 17.11.2011 17:35 # 0
parseFloat(s) === parseInt(s, 10);
Narsul 18.11.2011 11:12 # 0
Опять же, Ваша реализация снова имеет проблемы, например если s = '012a', функция должна возвратить false, так как это даже не число, однако, Ваша функция вернет true.
Беда такого подхода является в том, что он использует функции вида parse... которые предназначены для того, чтобы выпарсить то что похоже на число из строки, а не рассматривают все строку как число, в отличие от конструктора Number
HottDogg 18.11.2011 11:13 # 0
Govnocoder#0xFF 15.11.2011 20:53 # +1
DrFreez 15.11.2011 21:09 # 0
TheHamstertamer 15.11.2011 21:24 # +1
Narsul 17.11.2011 17:34 # +1