问题标签 [first-class-functions]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
go - Go中的动态函数调用
我正在尝试动态调用返回不同类型的函数struct
。
例如,让我们看下面的代码。
我想将函数doA
或doB
作为参数传递给将执行函数并对结果进行 JSON 编码的通用函数。如下所示:
但是当我这样做时:
我收到以下错误:
有没有办法实现这种动态调用?
function - F# 函数组合,其中第一个函数的元数 >1
我有两个功能f
和g
:
我想组合(>>
)它们以获得一个新的功能,f
然后执行g
结果。
该解决方案的行为应类似于:
这不起作用:
应该如何>>
使用?
swift - 使用重载函数作为一等公民
假设我们在一个类中有多个重载函数:
我们有一些 API 可以将函数作为参数:
我们如何将 appendToABC 函数之一作为参数传递给 printString 函数?
我考虑过用闭包包装函数,但看起来不太好
javascript - 使用第一类的这两个功能有什么区别?(javascript)
有两个函数,一个使用第一类并将一个函数分配给一个变量然后返回该变量,另一个只是一个普通的简单函数。在那里,我不明白为什么一个比另一个更好,因为它们看起来和对我做的事情完全相同。有人可以帮我一下,让我更容易理解其中的区别吗?
头等舱
简单的功能
java - 如何将方法放入地图?
我有字符串,我需要在其中找到括号()
, {}
,[]
并使用堆栈来检查正确性,如果有错误则打印错误的位置。因此,我将它们拆分为 char 数组,然后想逐个检查符号,如果它匹配我的地图,则执行我向/从堆栈推送/弹出的方法。
我想象它是这样的:
那么有这样的事情吗?或者我必须使用开关?
typescript - TypeScript 中的回调函数
我刚刚开始使用 Angular 2 和 TypeScript,我似乎无法弄清楚如何使用回调函数,我知道这可能是一个愚蠢的问题,但鉴于这个常规的 javascript 代码:
TypeScript 中的等价物是什么?
python - Python:类方法中的变量
我正在学习 python 并试图根据角色的热区编写一个伤口系统。这是我写的。不要过多评价我。
我希望 skin_cut 输入被识别为“Skin Cut”,然后添加到我定义为列表的 l_arm。但是,我总是收到名称错误(未定义 l_arm)。如果我用'wound'作为第一个参数重写方法,名称错误现在带有未定义的'wound'。这告诉我这是我错过的课程结构中的一些东西,但我不知道是什么。
python - 创建类后在方法上设置属性引发“'instancemethod'对象没有属性”但属性显然存在
在 Python(2 和 3)中,我们可以为函数分配属性:
这很酷。
但是为什么我们不能foo.bar
在以后改变呢?例如,在构造函数中,像这样:
Python声称没有,bar
即使它在前一行打印得很好。
如果我们尝试直接在类上更改它,也会发生同样的错误:
这里发生了什么,即为什么我们会看到这种行为?
有没有办法在创建类后设置函数的属性?
(我知道有多种选择,但我明确地想知道这里方法的属性,或者可能是更广泛的问题。)
动机:Django 利用了在方法上设置属性的可能性,例如:
hhvm - Hack 命名函数是否完全是一等公民?
HHVM 3.9 不喜欢带有命名函数的三元语句,即使通过fun()
, 但 ≥3.10 对它们完全没问题。然而,这似乎是少数情况之一,因为 3.9确实接受从具体函数返回的命名函数,以及接受传递给其他函数 ( 3v4l ) 的命名函数:
3.9 和 3.10 之间发生了什么变化?在 HHVM ≥3.10 中是否存在无法以这种方式引用和使用命名函数的情况?