js 实现sqrt
实现平方根的方法
在 JavaScript 中实现平方根计算可以通过多种方式完成,以下是几种常见的方法:
使用 Math.sqrt()
JavaScript 内置了 Math.sqrt() 方法,可以直接计算平方根:

const number = 16;
const result = Math.sqrt(number);
console.log(result); // 输出 4
牛顿迭代法
牛顿迭代法是一种数值逼近方法,可以用于手动实现平方根计算:

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 mid;
}
console.log(sqrtBinarySearch(16)); // 输出接近 4 的值
指数运算
利用指数运算的特性计算平方根:
function sqrtExponent(num) {
return Math.pow(num, 0.5);
}
console.log(sqrtExponent(16)); // 输出 4
性能比较
Math.sqrt()是最高效的方法,直接调用底层优化实现。- 牛顿迭代法和二分查找法适合需要自定义精度或学习算法实现时使用。
- 指数运算虽然简洁,但性能略低于
Math.sqrt()。
选择哪种方法取决于具体需求,通常优先使用 Math.sqrt()。






