如何编写通用函数以在 TypeScript 中执行 OR 运算?
How to write a Generalized function to perform OR operation in TypeScript?
在 TypeScript 中,有没有一种方法可以创建一个通用函数来对传递的任意数量的参数执行 OR 运算?
我可以为 2 个参数编写一个函数。要求是针对任意数量的参数对此进行概括。
export const performOR = (arg1, arg2) => arg1 || arg2;
const isArg1OrArg2 = performOR(x, y);
如果这可以通过传递参数数组来实现,那也很好。
这听起来像是家庭作业,但是:
export const performOR = (...args: any[]):boolean => {
for(const item of args) {
if (item) return true;
}
return false;
}
在上面发布的答案的帮助下,我对 OR 和 AND 运算进行了一些修改,使其通用化。可能对寻找类似解决方案的任何其他人有所帮助。
const performOR = (...args: any[]):boolean => {
return args.some(arg => arg === true);
}
const performAND = (...args: any[]):boolean => {
return args.every(arg => arg === true);
}
performOR(true, false);
performAND(true, true);
在 TypeScript 中,有没有一种方法可以创建一个通用函数来对传递的任意数量的参数执行 OR 运算?
我可以为 2 个参数编写一个函数。要求是针对任意数量的参数对此进行概括。
export const performOR = (arg1, arg2) => arg1 || arg2;
const isArg1OrArg2 = performOR(x, y);
如果这可以通过传递参数数组来实现,那也很好。
这听起来像是家庭作业,但是:
export const performOR = (...args: any[]):boolean => {
for(const item of args) {
if (item) return true;
}
return false;
}
在上面发布的答案的帮助下,我对 OR 和 AND 运算进行了一些修改,使其通用化。可能对寻找类似解决方案的任何其他人有所帮助。
const performOR = (...args: any[]):boolean => {
return args.some(arg => arg === true);
}
const performAND = (...args: any[]):boolean => {
return args.every(arg => arg === true);
}
performOR(true, false);
performAND(true, true);