Как удалить "px" из 245px


какой простой способ удалить последние два символа строки?

6 72

6 ответов:

преобразование 245px в 245 просто запустите:

parseInt('245px', 10);

Он сохраняет только ведущие числа и отбрасывает все остальные.

использовать

var size = parseInt('245px', 10);

где 10 - radix определение parseInt разбиение на decimal стоимостью

используйте parseInt, но не используйте parseInt без radix

функция parseInt () анализирует строку и возвращает целое число.

подпись parseInt(string, radix)

второй аргумент заставляет parseInt использовать базовую десятичную систему счисления.

  • ввод по умолчанию тип для ParseInt () является десятичным (основание 10).
  • если число начинается с "0", оно считается восьмеричным (основание 8).
  • если он начинается в "0x", предполагается, что он шестнадцатеричный

почему? если $(этот).attr ('num') будет "08" parsInt без основания станет 0

это делает именно то, что вы просите: удалить последние два символа строки:

s.substr(0, s.length-2);

чтобы преобразовать значение пикселя без "px" в конце. использовать parseFloat.

parseFloat('245px', 10);//returns 245

Примечание: Если вы используете parseInt, vaue будет правильным, если значение является целым числом. Если значение является десятичным, как 245.50 px, то значение будет округлено до 245.

Удивительно, но метод подстроки s.substr(0, s.length-2); на самом деле совсем немного быстрее для снятия px (да, это не так чисто выглядит, и если есть пространство, оно останется -- "250px" -> "250" vs "250 px" -> "250 ").

если вы хотите учитывать пробелы (которые вы, вероятно, должны), то с помощью .trim() функция будет на самом деле замедлить

проверить http://www.w3schools.com/jsref/jsref_substr.asp В вашем случае было бы что-то вроде

string.substr(0, string.length - 2)