不能在另一个函数的相关代码中使用函数变量吗?
Can you not use function variables inside another function's associated code?
在Codecademy[1]的代码练习中,它要求您对一个变量进行立方,我可以很容易地使用:
// Accepts a number x as input and returns its square
function square(x) {
return x * x;
}
// Accepts a number x as input and returns its cube
function cube(x) {
return x * x * x;
}
cube(7);
我的问题是立方体函数,为什么当我使用以下代码时,我会得到NaN
错误:
function cube(x) {
return x * square;
}
[1] http://www.codecademy.com/courses/functions_in_javascript/0 !/运动/1
try:
你错过了(x)
function cube(x) {
return x * square(x);
}
应该是
function cube(x) {
return x * square(x);
}
x * square将尝试将x与导致问题的函数相乘
在您的代码中,square
被解析为一个函数。要获得返回值,您需要调用函数,而不仅仅是引用。
function cube(x) {
return x * square(x);
}
当进行乘法或除法运算时,首先将两个参数都转换为数字。函数没有合理的转换,所以它们被转换为NaN。
Number(function(){}) //gives NaN
如果你用NaN乘以任何数你也会得到NaN
2 * NaN
1 * (function(){}) //also gives NaN since the function is converted to that
解决方案(正如许多人提到的)是乘以x的平方,而不是乘以平方函数本身。
x * square(x)
相关文章:
- 访问嵌套函数结构中的JavaScript父函数变量
- Javascript函数变量传递语法问题
- JavaScript 函数变量范围问题
- 在 promise 中获取构造函数变量
- 将函数结果传递给Javascript中的另一个函数变量
- 用对象设置函数变量's值
- Javascript函数变量应生成错误,而不是未定义的错误
- 我可以访问用户脚本中的匿名函数变量吗?
- 在实例化期间使用构造函数变量
- 为什么在 JavaScript 中不能用函数变量覆盖字符串变量
- JavaScript 允许调用函数访问调用函数变量
- 如何在嵌套原型中访问 JavaScript 构造函数变量
- 对函数变量的 JavaScript 控制台日志输出感到困惑
- 如何将函数变量传递给主干模型上的 jQuery 事件
- 如何访问构造函数变量
- 实例函数变量不会更改
- 为什么函数变量在变量之后是未定义的
- 用内部函数变量更改外部函数变量?Javascript
- Javascript - 使用闭包递增静态函数变量模拟
- 异步 JavaScript 静态函数变量