с учетом строки, такой как один из следующих:
'2'
'2px'
'2%'
'2em'
'2foobar'
'foobar'
Я хотел бы определить:
1), является ли это простым числом (2 или 2,2), и еслион округляется (Math.floor ()) и добавляет к нему «px», так что «2» или «2.2» становится «2px»
2), если это не простое число, определите,является допустимым значением css, то есть если оно состоит из числа (int или float), за которым следуют «px», «em» или «%».Я знаю, что есть другие, но я просто поддержу этих троих.Если это так, оставьте его.
3), если нет, посмотрите, начинается ли строка с числа (int ot float), округлите его и добавьте 'px'
4), а если нетустановите пустую строку
, чтобы результат был:
'2' -> '2px'
'2.2' -> '2px'
'2%' -> '2%'
'2em' -> '2em'
'2foo' -> '2px'
'foo' -> ''
Возможно ли сделать это компактным способом (возможно, с помощью регулярных выражений), или с использованием существующегобиблиотека валидатора css для JS?