首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >为什么这个用于查找派生的js代码不起作用呢?

为什么这个用于查找派生的js代码不起作用呢?
EN

Stack Overflow用户
提问于 2018-05-31 17:47:09
回答 2查看 102关注 0票数 0

当运行它时,它会给出一个未定义的警告框,你能帮我调试这个代码吗?我找不到正确的错误,你可以检查一下,并请帮助我。它必须通过使用越来越小的x=10给出f(x)=x^2+1在点h处的导数,直到达到所需的精度。

代码语言:javascript
复制
function f(x) {
  return x * x + 1;
}
var iter = [];
var h = 0;
var ddx = 0;
iter[0] = ((f(10 + h) - f(10)) / h);

function d_dx(p) {
  for (i = 1; i < 20; i++) {
    iter[i] = ((f(p + h) - f(p)) / h);
    if (iter[i] = iter[i - 1]) {
      break;
      var ddx = iter[i];
    } else {
      h = h / 2;
    }
  }
  return ddx;
}
console.log(d_dx(10));

EN

回答 2

Stack Overflow用户

发布于 2018-05-31 18:18:13

中断后无法访问var ddx。这就是它返回undefined的原因。还有一件事,您正在使用赋值而不是条件表达式(正确的比较是- if (iteri == iteri - 1))。

返回ddx时,您使用的var ddx超出了作用域。

票数 0
EN

Stack Overflow用户

发布于 2018-05-31 18:21:54

您的iter数组将为NaNh将始终为0,并除以0。if (iter[i] = iter[i - 1])语句错误,应使用===比较值。如果您想要多次循环此代码,则不能在if中使用break。你的代码中有很多错误。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/50621356

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档