gpt4 book ai didi

javascript - 在 JavaScript 中向函数添加函数的最佳实践是什么?

转载 作者:行者123 更新时间:2023-11-28 01:31:46 24 4
gpt4 key购买 nike

我遇到过这样的情况:我想要一个带有一个调整大小函数的主 js 文件和特定文件,这些文件可以向主文件添加工作负载,而无需更改主文件和手动调用函数。

假设我有一个对象文字

var App = {
resize: function(){
// Code should be executed here
},
addResize: function(){
// ?
}
}

我想要一个函数将代码添加到调整大小函数,该函数动态地将工作负载添加到调整大小函数(在窗口调整大小时调用):

App.addResize(function(){ ... });

我想到的第一件事是将 addResize 中的匿名函数存储到数组中,并在调整大小函数中对其进行迭代,但这感觉不像是最佳实践:

var App = {
resizeFunctions = [];
resize: function(){
// iterate over resizeFunctions and call each one
// here I define throttling/debouncing ONCE
},
addResize: function(fn){
this.resizeFunctions.push(fn);
}
}

window.onresize = App.resize();

App.addResize(fn1);
App.addResize(fn2);

有更好的方法吗?

最佳答案

当您指的是一个函数时,即。调整大小函数,我假设您正在寻找函数重载:

Function overloading in Javascript - Best practices
http://ejohn.org/blog/javascript-method-overloading/

如果您想将与单个父对象相关的一组方法的功能扩展到不同的子对象,我会研究原型(prototype)继承。
它允许您定义或重新定义每个子对象的父方法。

关于javascript - 在 JavaScript 中向函数添加函数的最佳实践是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22037497/

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