gpt4 book ai didi

javascript - 这个例子中的 fn 是什么?

转载 作者:搜寻专家 更新时间:2023-10-31 23:19:10 24 4
gpt4 key购买 nike

在这个例子中,有一个带有 null 和 false 参数的 fn 函数:

io.configure(function () {
function auth (data, fn) {
fn(null, false);
};

io.set('authorization', auth);
});

https://github.com/LearnBoost/Socket.IO-node/blob/master/test/manager.test.js#L400-403

什么是fn,它有什么作用?

它只是意味着,示例函数,将您自己的函数粘贴在这里,还是其他意思?

最佳答案

在此示例中,fn 是作为参数传递给 auth() 的函数,所以是的,您提供 auth() 具有您自己选择的一些功能。这称为“高阶函数”,请参阅 here简短介绍。这是一种主要与 functional programming 有关的技术,并且由于 Javascript 的面向对象通常被认为有点弱,因此 Javascript 中更高级的程序往往采用这种风格(Javascript 有时被称为“Scheme in Java's clothing”)

在这个确切的代码中:它是测试套件的一部分,因此它将 io 配置为始终失败授权,以查看授权失败是否得到妥善处理(目前为第 408-409 行) ):

res.statusCode.should.eql(403);
data.should.match(/handshake unauthorized/);

应该无一异常(exception)地到达这些行,并且测试会检查结果是否包含有意义的值。

关于javascript - 这个例子中的 fn 是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6437575/

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