Возможно, есть один или два человека, которые сталкиваются с этим вопросом, которым требуется гораздо более строгая проверка, чем обычно (как и я). В этом случае это может быть полезно:
if(str === String(Number(str))) {
// it's a "perfectly formatted" number
}
Остерегайтесь! Это будет отклонять строки, такие как .1
, 40.000
, 080
, 00.1
. Это очень придирчиво - строка должна соответствовать «самой минимальной совершенной форме» номера для прохождения этого теста.
Он использует конструктор String
и Number
для перевода строки в число и назад, и, таким образом, проверяет, соответствует ли «идеальная минимальная форма» JavaScript (тот, который он преобразовал с помощью исходного конструктора Number
) в исходную строку.
Вместо - fd.append( 'userfile', $('#userfile')[0].files[0]);
Использование - fd.append( 'file', $('#userfile')[0].files[0]);