gpt4 book ai didi

javascript - 为什么在 JavaScript 中需要传递参数,即使它不会在函数内部使用?

转载 作者:行者123 更新时间:2023-11-28 13:46:38 25 4
gpt4 key购买 nike

不确定这是否是一个愚蠢的问题。我已经开始使用一些 JavaScript 框架,当我看到函数内未使用的参数时,我总是感到困惑。

一个Backbone示例(模型 参数):

var Todo = Backbone.Model.extend({
validate: function(attribs){
if(attribs.title === undefined){
return "Title can't be undefined";
}
},

initialize: function(){
console.log('This model has been initialized');
this.on('error', function(model, error){
console.log(error);
});
},
});

Express示例(reqnext 参数):

app.use(function(err, req, res, next){
console.error(err.stack);
res.send(500, 'Something broke!');
});

所以,我想知道,这些值只是被忽略了?如果你把它们排除在外会发生什么?为什么他们必须首先被包括在内? (我习惯了这样的想法:如果函数传递参数是因为它将在函数中使用)。

最佳答案

对于初始化:

未使用变量model,但使用error。因为错误是第二个参数,所以模型必须作为占位符传递。

使用中也是如此:

未使用变量req,但需要将其用作占位符,以便可以使用res

<小时/>

为什么这些函数具有似乎未使用的参数?

也许是为了向后兼容性或可扩展性。

我认为这些都是开源库(我从未使用过)。

关于javascript - 为什么在 JavaScript 中需要传递参数,即使它不会在函数内部使用?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13851909/

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