当前位置:首页 > JavaScript

js实现开方

2026-04-06 23:56:34JavaScript

JavaScript 实现开方运算的方法

使用 Math.sqrt()

JavaScript 内置 Math.sqrt() 方法可直接计算平方根。该方法接受一个数字参数,返回其平方根。若参数为负数,返回 NaN

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

自定义开方函数(二分法)

若需手动实现平方根计算,可采用二分法逼近结果。以下是一个示例实现:

function sqrt(num, precision = 0.0001) {
    if (num < 0) return NaN;
    let low = 0;
    let high = num;
    let mid = (low + high) / 2;

    while (Math.abs(mid * mid - num) > precision) {
        if (mid * mid > num) {
            high = mid;
        } else {
            low = mid;
        }
        mid = (low + high) / 2;
    }
    return mid;
}

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

牛顿迭代法

牛顿迭代法是另一种高效计算平方根的方法,收敛速度较快。

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

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

使用指数运算符

通过幂运算 结合分数指数亦可实现开方。

js实现开方

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

注意事项

  • 负数处理:直接调用 Math.sqrt(-1) 会返回 NaN,自定义函数需额外判断。
  • 精度控制:手动实现的函数需指定精度阈值,避免无限循环。
  • 性能考量:内置方法通常经过优化,性能优于手动实现。

标签: js
分享给朋友:

相关文章

js实现计算器

js实现计算器

实现基础计算器功能 使用JavaScript创建一个基础计算器需要处理数字输入、运算符逻辑和结果显示。以下是一个简单的实现示例: let currentInput = '0'; let previo…

js实现交换

js实现交换

交换变量的方法 在JavaScript中,交换两个变量的值有多种方法。以下是常见的几种实现方式: 使用临时变量 通过引入一个临时变量来存储其中一个变量的值,实现交换: let a = 1; le…

节流js实现

节流js实现

节流(Throttle)的实现原理 节流是一种限制函数执行频率的技术,确保函数在一定时间间隔内最多执行一次。适用于高频触发事件(如滚动、输入、窗口调整等)的场景。 基础实现方式 使用时间戳判断是否执…

js实现文字滚动

js实现文字滚动

实现文字滚动的几种方法 使用CSS动画实现滚动 通过CSS的@keyframes和transform属性可以实现平滑的文字滚动效果。 <style> .scroll-text { w…

js实现的游戏

js实现的游戏

JavaScript 游戏开发基础 JavaScript 是开发网页游戏的流行选择,因其无需插件即可在浏览器中运行。以下是一些关键技术和资源: HTML5 Canvas Canvas 提供了绘制图形…

js实现上传图片

js实现上传图片

使用HTML5的File API实现图片上传 HTML5的File API允许通过JavaScript访问用户选择的文件。需要创建一个文件输入元素,并监听其change事件。 <input t…