为什么这个代码没有定义,但没有2
Why does this code get undefined but not 2?
我试图将此Scheme代码翻译为Javascript:
(define (double f)
(lambda (x) (f (f x))))
(define (inc x) (+ x 1))
((double inc) 0)
((double inc) 0)
表示(inc (inc 0))
,因此返回2。
这是我的Javascript代码:
var double = function(f){
return function(x) { f(f(x)); }
}
var inc = function(x) {return x+1;}
double(inc)(0);
但是double(inc)(0)
返回undefined,而不是2。为什么?
var double = function(f){
return function(x) { return f(f(x)); }
}
var inc = function(x) {return x+1;}
double(inc)(0);
小错误:)应该与退货一起使用。
如果一个函数没有返回任何内容,那么它实际上会返回undefined。在double函数中,有一个函数返回"nothing"=>未定义。
您错过了double
函数中的return
:
var double = function(f){
return function(x) {return f(f(x)); }
}
var inc = function(x) {return x+1;}
double(inc)(0);
相关文章:
- 如何消除代码中的未定义和其他问题
- 为什么这个JS代码打印未定义
- .val()返回未定义的.text返回随机代码
- 为什么这个代码没有定义,但没有2
- 在一个JavaScript文件中解析云代码定义和作业
- 如何将自定义代码与drupal合并
- 我使用谷歌标签管理器在我的网站上启动标签.变量“;未定义的“;在任何版本的Internet Explorer的自定义代码
- ...不是 JavaScript {自定义代码} 中的函数
- 如何将自定义代码添加到prestashop
- 对 HTML5 项目使用自定义C++代码
- 在通过Modernizr加载jQuery之后运行自定义代码
- 如何在Chrome DevTools中运行自定义代码
- 在ASP.net MVC 3应用程序的头文件中添加自定义代码/脚本
- Jquery验证,如果有错误,我如何运行自定义代码
- 如何通过自定义代码在wordpress中上传图像
- 轻松地将自定义代码转换为Drupal模块
- Google DFP异步标记上的自定义代码
- Sencha应用程序构建原生覆盖我们的自定义代码
- jQuery 选项卡在移动设备中不起作用 - 自定义代码
- 是否有可能在每个Ajax请求中执行自定义代码,而无需手动将该代码添加到Ext Js中的每个Ajax代码中?