如何在 JavaScript 中获取数字的平方根?
在本教程中,我们将学习如何以两种方式在 JavaScript 中获取数字的平方根。
JavaScript 中数字的平方根可以通过两种方式找到 -
- 使用 Math.sqrt() 方法
- 通过创建自定义函数
数字的平方根是一个因数,当将其乘以自身时,会得出原始数字。例如,10 是 100 的平方根,因为如果将 10 乘以自身(10*10),结果将为 100。
使用 Math.sqrt() 方法
在 JavaScript 中,Math.sqrt() 方法可用于查找数字的平方根。它以变量为参数,如果变量为正数,则返回平方根值。否则,如果变量为负数或非数字值,则返回 NaN,表示"不是数字"。
用户可以按照以下语法使用 Math.sqrt() 方法查找数字的平方根。
语法
Math.sqrt( number );
参数
number − 它接受任何需要求平方根的数字变量。
返回类型
给定正数的平方根。
NaN 如果参数为负数或非数字值。
示例 1
在下面的示例中,我们使用 Math.sqrt() 方法求数字的平方根。我们采用不同的值来观察 Math.sqrt() 方法的输出。
<html> <body> <h4> Get the square root of a number using <i>Math.sqrt() </i> method </h4> <div id="root"> </div> <script> let positive_number = 4; let negative_number = -4; let root = document.getElementById('root'); root.innerHTML = "The square root of " + positive_number + " is: " + Math.sqrt(positive_number) + "<br>"; root.innerHTML += "The square root of " + negative_number + " is:" + Math.sqrt(negative_number) + "<br>"; </script> </body> </html>
在上面的输出中,用户可以看到 Math.sqrt() 方法返回正整数所需的平方根值,而对于负数和非数字值,它返回 NaN。
通过创建自定义方法
也可以不使用 Math.sqrt() 方法找出数字的平方根,在这种方法中,我们需要使用迭代来计算平方根值。
语法
function square_root(num) { //检查数字是否为负数或非数字 if (num < 0 || isNaN(num)) { return NaN } //从数字的一半开始计算 let square_root = num / 2 let temp = 0 //当 square_root 不等于 temp 时进行迭代 while (square_root != temp) { temp = square_root //缩小 square_root 值以找到平方根 square_root = (num / square_root + square_root) / 2 } return square_root }
算法
步骤 1 - 声明一个函数,并在函数中将数字作为参数。
步骤 2 - 检查数字是否为负数或非数字,并返回 NaN。
步骤 3 - 将 square_root 变量设置为给定数字的一半,并声明一个值为 0 的 temp 变量。
步骤 4 - 当 temp 不等于 square_root 值时进行迭代。
步骤 4.1 - 将 square_root 值存储在 temp 中。
步骤 4.2 - 将数字除以当前 square_root 值,并将当前 square_root 值的结果与其相加。
步骤 5 - 返回 square_root值。
示例
在下面的例子中,我们在不使用 Math.sqrt() 方法的情况下求出一个数字的平方根。我们取了不同的值来观察输出。
<html> <body> <h4> Get the square root of a number without using <i> custom </i> method. </h4> <div id = "root"> </div> <script> function square_root(num) { //checking if number is negative or non-numeric if (num < 0 || isNaN(num)) { return NaN } //starting the calculation from half of the number let square_root = num / 2 let temp = 0 // Iterating while square_root is not equal to temp while (square_root != temp) { temp = square_root // smalling the square_root value to find the square root square_root = (num / square_root + square_root) / 2 } return square_root } let positive_number = 121; let negative_number = -6; let root = document.getElementById('root'); root.innerHTML = "The square root of " + positive_number + " is: " + square_root(positive_number) + "<br>";root.innerHTML += "The square root of " + negative_number + " is: " +square_root(negative_number) + "<br>"; </script> </body> </html>
在上面的输出中,用户可以看到 square_root 方法返回正整数、负数和非数字值的所需平方根值。我们已经学习了如何使用带有和不带有 Math.sqrt() 方法的 JavaScript 获取数字的平方根值。第一种方法是获取平方根值的标准方法。第二种方法是一种更易于控制的方法,如果您想做的不仅仅是获取平方根值,请选择第二种方法。建议使用 Math.sqrt() 方法,因为它是 JavaScript 的内置方法。