【发布时间】:2013-10-26 05:32:12
【问题描述】:
我正在通过阅读 Eloquent JavaScript 来学习 JavaScript。我在本书网站提供的控制台上运行我的代码。我从以下代码中得到了SyntaxError : Unexpect Identifier。请帮忙。
function absolute (n){
if (n < 0)
return -n;
else
return n;
}
function average(x, y){
return (x + y) / 2;
}
function isGoodEnough(x, guess){
return (absolute(x - guess) < 0.0001);
}
function maybe(x, guess){
if isGoodenough(x, guess){
return guess;
}
else{
return maybe(x, average(x, x/guess));
}
}
function sqrt(x){
return maybe(x, 1);
}
【问题讨论】:
-
它是否告诉你语法错误在哪一行?
-
maybe函数中的if isGoodEnough(x, guess)周围缺少括号。 -
你应该使用
return -1*n,而不是return -n。另外,JSlint 是你的朋友。 -
@DesertIvy:
return -n;是有效代码。 jsfiddle.net/Buqh9 -
这个问题及其答案很糟糕......它们只对这个非常具体的问题有用。调试教程对未来的访问者会更有帮助。
标签: javascript recursion syntax