gpt4 book ai didi

javascript - 如何提取Javascript中的常见逻辑,包括return语句?

转载 作者:行者123 更新时间:2023-12-02 19:40:56 25 4
gpt4 key购买 nike

这是我的代码:

function function1() {
var ids = GetIds(); // predefined function
if (ids.length === 0) {
alert("Please select at least one item to procees.");
return;
}

...
}

function function2() {
var ids = GetIds(); // predefined function
if (ids.length === 0) {
alert("Please select at least one item to procees.");
return;
}

...
}

function function3() {
var ids = GetIds(); // predefined function
if (ids.length === 0) {
alert("Please select at least one item to procees.");
return;
}

...
}

如何提取公共(public)部分?如何重构代码? return 语句很难处理。是否有任何与重构此代码相关的模式?

提前致谢!

    if (ids.length === 0) {
alert("Please select at least one item to procees.");
return;
}

最佳答案

这非常适合 decorator pattern .

function decorateGetId(f) {
return function () {
var ids = GetIds();
if (ids.length === 0) {
alert("Please select at least one item to process.");
return;
} else {
return f(ids);
}
};
}

然后要么

function function1(ids) {
// ...
}
function1 = decorateGetId(function1);

或者我的偏好,因为函数语句通过提升做了奇怪的事情。

var function2 = decorateGetId(function (ids) {
// function 2 body ...
});

关于javascript - 如何提取Javascript中的常见逻辑,包括return语句?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10415487/

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