javascript --- > 函数的柯里化 && Vue 2.x中柯里化的使用

函数式编程部分重点

参考资料: 函数式编程

柯里化

只传递给函数一部分参数来调用它,让它返回一个函数去处理剩下的参数

var add = function (x) {
   
    return function(y) {
   
        return x + y
    }
}

var increment = add(1)
var addTen = add(10)

increment(2) // 3

addTen(10)	// 12
  • 判断元素:Vue本质上是使用HTML的字符串作为模板的,将字符串转换为AST(抽象语法树),再转换为VNode(虚拟DOM)
    • 1
      点赞
    • 1
      收藏
      觉得还不错? 一键收藏
    • 2
      评论
    在Scala函数是一等公民,可以作为参数传递和返回值。Scala也支持许多高级函数特性,包括柯里函数和隐式函数。 1. 柯里函数 柯里函数是将多个参数的函数转换成一系列单参数函数的过程。例如,一个接受两个参数的函数可以被柯里为两个单参数函数。 ```scala def add(x: Int, y: Int) = x + y // 柯里函数 def addCurried(x: Int)(y: Int) = x + y ``` 在柯里函数,每个参数都是一个单独的函数参数列表。这样做有助于提高代码的可读性和重用性。 2. 隐式函数 隐式函数是一种特殊类型的函数,它可以将一个类型转换为另一个类型。这种转换是在编译时自动完成的,而不需要显式调用函数。 ```scala // 定义一个隐式函数将Int类型转换成String类型 implicit def intToString(i: Int): String = i.toString // 使用隐式函数将Int类型转换成String类型 val s: String = 42 ``` 在上面的例子,当将一个Int类型的值赋给一个String类型的变量时,编译器会自动调用intToString函数,将Int类型转换成String类型。 除了类型转换,隐式函数还可以用于隐式参数和隐式类。隐式参数是一种特殊类型的函数参数,它可以在函数调用时自动提供。隐式类是一种特殊类型的类,它可以在需要时自动转换成其他类型。 Scala函数是非常强大和灵活的,柯里函数和隐式函数是其两个重要的特性。它们可以提高代码的可读性、重用性和灵活性,使程序开发更加高效和简洁。

    “相关推荐”对你有帮助么?

    • 非常没帮助
    • 没帮助
    • 一般
    • 有帮助
    • 非常有帮助
    提交
    评论 2
    添加红包

    请填写红包祝福语或标题

    红包个数最小为10个

    红包金额最低5元

    当前余额3.43前往充值 >
    需支付:10.00
    成就一亿技术人!
    领取后你会自动成为博主和红包主的粉丝 规则
    hope_wisdom
    发出的红包
    实付
    使用余额支付
    点击重新获取
    扫码支付
    钱包余额 0

    抵扣说明:

    1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
    2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

    余额充值