gpt4 book ai didi

javascript - 柯里化(Currying)函数构造函数

转载 作者:行者123 更新时间:2023-11-30 08:23:56 24 4
gpt4 key购买 nike

我想知道是否可以在 javascript 中实现这一点:

function Hello() { }

Hello.prototype.echo = function echo() {
return 'Hello ' + this.firstname + '!';
};

// execute the curryed new function
console.log(new Hello()('firstname').echo())

是否可以柯里化(Currying) var o = new Class()(param1)(param2)(...)

预先感谢您的帮助。

最佳答案

使用 answergeorg具有一组属性和一个用于分配任意数量的属性的计数器。

function Hello() {
var args = ['firstname', 'lastname'],
counter = 0,
self = function (val) {
self[args[counter++]] = val;
return self;
};
Object.setPrototypeOf(self, Hello.prototype);
return self;
}

Hello.prototype.echo = function echo() {
return 'Hello ' + this.firstname + ' ' + (this.lastname || '') + '!';
};

console.log(new Hello()('Bob').echo());
console.log(new Hello()('Marie')('Curie').echo());

关于javascript - 柯里化(Currying)函数构造函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48724422/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com