Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770
Форумы портала PHP.SU :: Версия для печати :: целое числа
Форумы портала PHP.SU » Клиентская разработка » JavaScript & VBScript » целое числа

Страниц (1): [1]
 

1. Test11 - 13 Августа, 2016 - 12:45:15 - перейти к сообщению
имеются числа
2.33, 322.01231

Как получить целое, не округлять, а только целое до точки??
2. Строитель - 13 Августа, 2016 - 13:13:05 - перейти к сообщению
Test11 пишет:
Как получить целое, не округлять, а только целое до точки??
PHP:
скопировать код в буфер обмена
  1. $int = 322.91231;
  2. $int = (int)strstr($int, '.', true); // Начиная с PHP 5.3.0
  3.  
  4. echo $int; // 322

(Добавление)
Упс ... Вопрос был не по PHP, поэтому мой пост с примером не актуален.
3. Fart - 13 Августа, 2016 - 14:30:44 - перейти к сообщению
можно применять разные способы, в том числе костыли (смотря какая ситуация), а тебе вот к примеру:
CODE (javascript):
скопировать код в буфер обмена
  1. <script>
  2. var i = 3.45677;
  3. i = new String(i)
  4. i = i.split('.');
  5. console.log(i[0]);
  6.  
  7. var i = 3.45677;
  8. i = new String(i);
  9. i = i.replace(/\.[0-9]+/);
  10. console.log(i[0]);
  11.  
  12. var i = 3.05677;
  13. console.log(parseInt(i));
  14. </script>
4. IllusionMH - 13 Августа, 2016 - 23:07:10 - перейти к сообщению
Test11, вместо round использовать floor для положительных, ceil для отрицательных
5. nerv - 21 Августа, 2016 - 12:31:28 - перейти к сообщению
способов много. Напишу о тех, которые еще не упомянули.

CODE (javascript):
скопировать код в буфер обмена
  1. let num = 1.4
  2.  
  3. // менее предпочтительные (на мой взгляд)
  4. console.log(~~num); // неявное приведение к int
  5. console.log(num|0); // неявное приведение к int
  6. console.log(num<<0); // неявное приведение к int
  7. console.log(num>>0); // неявное приведение к int
  8. console.log(num>>>0); // неявное приведение к int
  9.  
  10. // болле предпочиттелен, т.к. очевиден, но возвращает строку, а это не то, что нам надо
  11. console.log(num.toPrecision(1)); // результат -- строка
  12. console.log(Number(num.toPrecision(1))); // результат -- число

https://developer[dot]mozilla[dot]org/ru[dot][dot][dot]mber/toPrecision

самый правильный с округлением, о кот. говорил IllusionMH
https://developer[dot]mozilla[dot]org/ru[dot][dot][dot]jects/Math/trunc

 

Powered by ExBB FM 1.0 RC1