当前位置:首页 > JavaScript

js实现开平方根

2026-01-31 10:30:19JavaScript

实现开平方根的几种方法

使用 Math.sqrt()

JavaScript 内置的 Math.sqrt() 方法可以直接计算平方根,这是最简单高效的方式。

js实现开平方根

const number = 16;
const squareRoot = Math.sqrt(number);
console.log(squareRoot); // 输出: 4

牛顿迭代法

牛顿迭代法是一种数值逼近方法,通过迭代逐步逼近平方根的精确值。适用于需要自定义实现的情况。

js实现开平方根

function sqrtNewton(num, precision = 0.0001) {
    let guess = num / 2;
    while (Math.abs(guess * guess - num) > precision) {
        guess = (guess + num / guess) / 2;
    }
    return guess;
}

console.log(sqrtNewton(16)); // 输出接近 4

二分查找法

通过二分查找在范围内逼近平方根的值,适合理解算法原理的场景。

function sqrtBinarySearch(num, precision = 0.0001) {
    let low = 0;
    let high = num;
    let mid;
    while (high - low > precision) {
        mid = (low + high) / 2;
        if (mid * mid > num) {
            high = mid;
        } else {
            low = mid;
        }
    }
    return (low + high) / 2;
}

console.log(sqrtBinarySearch(16)); // 输出接近 4

指数运算符

利用数学公式 √x = x^(1/2),通过指数运算符计算。

const number = 16;
const squareRoot = number  0.5;
console.log(squareRoot); // 输出: 4

性能比较

  • Math.sqrt() 是原生方法,性能最优,推荐优先使用。
  • 牛顿迭代法和二分查找法适用于学习或特殊需求(如高精度定制)。
  • 指数运算符简洁,但兼容性需注意(ES6+支持)。

选择方法时根据实际需求权衡效率与实现复杂度。

标签: 开平方根
分享给朋友:

相关文章

js函数实现开平方

js函数实现开平方

在JavaScript中实现开平方可以通过多种方法完成,以下是几种常见的实现方式: 使用Math.sqrt() JavaScript内置的Math.sqrt()方法是最直接的方式,返回一个数的平方…