JavaScript实用技巧:随机数、定时器与字符串转数字

需积分: 9 0 下载量 69 浏览量 更新于2024-08-30 收藏 103KB PDF 举报
"本文主要汇总了JavaScript中的一些实用方法,包括获取两个区间内随机数、随机返回正负参数、正确使用setInterval和setTimeout计时器函数传参以及字符串转换为数字。这些方法在日常开发中非常常见,能够帮助简化代码并提高效率。" 在JavaScript编程中,掌握一些实用的方法可以极大地提升开发效率。以下是对给出的JavaScript方法的详细解释: 1. **获取两个区间内的随机数**: 这个函数`getRandomNum(Min, Max)`用于生成`Min`和`Max`之间的随机整数,包括`Min`但不包括`Max`。首先,通过比较确保`Min`小于等于`Max`,然后计算`Max`和`Min`之间的差值`Range`,接着利用`Math.random()`生成0到1之间的小数,并乘以`Range`再向上取整得到随机整数。最后,将随机数加上`Min`以保证其在正确的区间内。 2. **随机返回正负参数**: 函数`getRandomXY(num)`接收一个数值`num`,根据`Math.random()`生成的随机值决定是否将其变为负数。如果生成的随机数小于等于0.5,则将`num`取反,从而实现返回正负参数的功能。 3. **setInterval和setTimeout计时器函数传参**: 在JavaScript中,`setInterval`和`setTimeout`函数的回调函数不能直接传递参数。正确的方式是使用匿名函数包裹被调用的函数,并在匿名函数内部调用该函数,将参数传递进去。例如,示例中的`var b`就展示了如何正确传递参数。 4. **计时器递归调用**: 示例展示了如何使用计时器进行递归调用。`fn2(a, b)`用于清理计时器,而`fn(a)`则创建一个新的计时器并传入自身作为参数,这样可以形成递归调用结构。`fn2`在满足一定条件(如`s`为真)时会清理所有相关的计时器。 5. **字符串转换为数字**: 有时候,我们只需要将字符串转化为数字,而不需要创建新的Number对象。一个简单的方法是直接用字符串减去零,例如`"123" - 0`会返回整数`123`。这是因为JavaScript会尝试将字符串与数字进行运算,从而自动进行类型转换。 以上这些JavaScript方法虽然看似简单,但在实际开发中却十分实用。理解并掌握它们,可以在编写代码时更加游刃有余,提高代码的简洁性和可读性。