[前端技术]如何加深对JavaScipt中的Math.ceil() 、Math.floor() 、Math.round() 三个函数的理解...
首先還是看看《The Definitive Guide, 4th Edition》書中對三個函數的的定義。
Math.ceil(x): round a number up
Arguments: Any numeric value or expression
Returns: The closest integer greater than or equal to x.
-----------------------------------------------------------------------------------------------------
Math.floor(x): round a?number down
Arguments: Any numeric value or expression
Returns: The closest integer less than or equal to x.
-----------------------------------------------------------------------------------------------------
Math.round(x): round to the nearest integer
Arguments: Any number.
Returns: The integer closest to x.
?
通過對三個函數的原型定義的理解,其實很容易記住三個函數。
1. Math.ceil() 用作向上取整。
2. Math.floor() 用作向下取整。
3. Math.round() 用作四舍五入取整。
?
最后通過一個具體應用,進一步加深對三個函數的印象:
假設現在我要做一個Web Puzzle,需要獲取一個指定范圍的隨機數,下面我會編寫一個自定義函數getRangeRandom(m, n, t)。
?
代碼 1 <script type="text/javascript">2 /*
3 ** 函數功能: 獲取指定范圍的隨機數
4 */
5 function getRangeRandom(m, n, t)
6 {
7 var seed =0;
8 switch(t)
9 {
10 // 隨機數范圍: m <= seed < n
11 ?case0:
12 seed = m + parseInt(Math.random() * n);
13 break;
14
15 // 隨機數范圍: m <= seed < n
16 ?case1:
17 seed = m + Math.floor(Math.random() * n);
18 break;
19
20 // 隨機數范圍: m < seed <= n
21 ?case2:
22 seed = m + Math.ceil(Math.random() * n);
23 break;
24
25 // 隨機數范圍: m <= seed <= n
26 ?case3:
27 seed = m + Math.round(Math.random() * n);
28 break;
29 }
30
31 return seed;
32 }
33 </script>
?
轉載于:https://www.cnblogs.com/JavCof/archive/2010/04/29/1724193.html
總結
以上是生活随笔為你收集整理的[前端技术]如何加深对JavaScipt中的Math.ceil() 、Math.floor() 、Math.round() 三个函数的理解...的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: MapReduce的优点
- 下一篇: 让元素获得焦点