当前位置:首页 > 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 实现倒计时功能可以通过 setInterval 或 setTimeout 结合日期计算来完成。以下是几种常见的实现方式: 使用 setInterva…

js实现分页

js实现分页

分页的基本实现思路 在JavaScript中实现分页功能通常需要结合前端和后端逻辑。前端负责渲染分页控件和处理用户交互,后端负责提供分页数据。 前端分页实现 纯前端分页适用于数据量较小的情况,可以直…

js 实现vue

js 实现vue

Vue.js 的基本实现 在 JavaScript 中实现 Vue.js 的核心功能,可以通过数据绑定、响应式系统和虚拟 DOM 来实现。以下是实现 Vue.js 核心功能的简化版本。 数据响应式系…

js实现选题

js实现选题

实现选题功能的JavaScript方法 基础实现方案 使用数组存储选项,通过随机索引选取: const options = ['选项A', '选项B', '选项C', '选项D']; const r…

js实现密码

js实现密码

密码强度验证 使用正则表达式验证密码强度是一种常见方法。以下代码检查密码是否包含大小写字母、数字和特殊字符,且长度至少为8位: function checkPasswordStrength(pass…

js实现视口

js实现视口

js实现视口检测的方法 使用JavaScript检测元素是否进入视口(viewport)可以通过Intersection Observer API或手动计算元素位置实现。以下是两种常见方法: Int…