当前位置: 首页 > 编程笔记 >

Lua 匿名功能

茅华灿
2023-03-14
本文向大家介绍Lua 匿名功能,包括了Lua 匿名功能的使用技巧和注意事项,需要的朋友参考一下

示例

创建匿名函数

匿名函数就像常规的Lua函数一样,只是它们没有名称。

doThrice(function()
    print("Hello!")
end)

如您所见,该函数未分配任何名称,例如print或add。要创建匿名函数,您要做的就是省略名称。这些函数也可以接受参数。

了解语法糖

重要的是要了解以下代码

function double(x)
    return x * 2
end

实际上只是

double = function(x)
    return x * 2
end

但是,上述函数不是匿名的,因为该函数直接分配给变量!

函数是一流的价值

这意味着函数是一个具有与常规值(如数字和字符串)相同的权限的值。函数可以存储在html" target="_blank">变量中,表中,可以作为参数传递,也可以由其他函数返回。

为了说明这一点,我们还将创建一个“半”函数:

half = function(x)
    return x / 2
end

因此,现在我们有两个变量half和double,都包含一个函数作为值。如果我们想创建一个将数字4输入两个给定函数并计算两个结果之和的函数,该怎么办?

我们想像这样调用此函数sumOfTwoFunctions(double, half, 4)。这会将double函数,half函数和整数4输入到我们自己的函数中。

function sumOfTwoFunctions(firstFunction, secondFunction, input)
    return firstFunction(input) + secondFunction(input)
end

上面的sumOfTwoFunctions函数展示了如何在参数内传递函数,以及如何通过其他名称访问函数。

 类似资料:
  • 本文向大家介绍Julia匿名功能,包括了Julia匿名功能的使用技巧和注意事项,需要的朋友参考一下 示例 箭头语法 可以使用->语法创建匿名函数。这对于将函数传递给高阶函数(例如函数)很有用map。下面的函数计算数组中每个数字的平方A。 使用此功能的示例: 多行语法 可以使用function语法创建多行匿名函数。例如,以下示例计算第一个n数字的阶乘,但使用匿名函数代替内置函数factorial。

  • 在编写spark代码时,我使用的是UDF(用户定义函数)。UDF是一个接口,其实现方式如下。 所以UDF1是一个接口,里面有调用方法。当我使用UDF1接口创建一个实例时,JVM会创建一个匿名类,该类实现UDF1接口并实现调用方法。 在SPARK Api中,要使用registerCountryCodeFunctionUDF功能,我需要执行以下操作 我想知道,我如何创建自己的UDF函数,用户可以在哪里

  • 一个元素可以按照HTML元素的嵌套方式包含其他元素,大多数情况下,框都是由显式定义的元素所生成的。 然而,当把文本直接添加到一个块容器元素中(不是包含在行内元素)时,即便没有为这些文本显式定义元素,它们也会生成框。 没有被元素显式包含的文本,称作匿名文本,因为没有与之关联的元素。把匿名文本所生成框,称作匿名框。匿名框分为两种,一种是匿名块框,另一种是匿名行内框。 当把文本直接添加到一个块容器元素中

  • 问题内容: 如何从匿名成功函数中更新returnHtml变量? 问题答案: 那是错误的方法。AJAX中的第一个A是异步的。该函数在AJAX调用返回之前返回(或者至少可以返回)。因此,这不是范围问题。这是订购的问题。只有两个选项: 使用选项使AJAX调用同步( 不推荐 );要么 改变思维方式。代替从函数返回HTML,您需要传递一个回调,以在AJAX调用成功时被调用。 作为(2)的示例:

  • 匿名类是指没有类名的内部类,必须在创建时使用 new 语句来声明类。其语法形式如下: 这种形式的 new 语句声明一个新的匿名类,它对一个给定的类进行扩展,或者实现一个给定的接口。使用匿名类可使代码更加简洁、紧凑,模块化程度更高。 匿名类有两种实现方式: 继承一个类,重写其方法。 实现一个接口(可以是多个),实现其方法。 下面通过代码来说明。 程序的输出结果如下: 从输出结果可以看出,匿名内部类有

  • 5.6. 匿名函数 拥有函数名的函数只能在包级语法块中被声明,通过函数字面量(function literal),我们可绕过这一限制,在任何表达式中表示一个函数值。函数字面量的语法和函数声明相似,区别在于func关键字后没有函数名。函数值字面量是一种表达式,它的值被成为匿名函数(anonymous function)。 函数字面量允许我们在使用函数时,再定义它。通过这种技巧,我们可以改写之前对st