gpt4 book ai didi

JavaScript——将 bool (或按位)运算符作为参数传递?

转载 作者:行者123 更新时间:2023-12-05 09:13:37 27 4
gpt4 key购买 nike

在 C# 中有多种方法可以做到这一点 C# Pass bitwise operator as parameter特别是“Bitwise.Operator.OR”对象,但是这样的事情可以用 JavaScript 完成吗?例如:

function check(num1, num2, op) {
return num1 op num2; //just an example of what the output should be like
}

check(1,2, >); //obviously this is a syntax error, but is there some kind of other object or bitwise operator of some kind I can plug into the place of ">" and change the source function somehow?

最佳答案

您可以创建一个对象,其中键作为运算符,值作为函数。您将需要括号表示法才能访问这些函数。

您可以使用 Rest Parameters 和 some()every() 用于 && 的两个以上参数,||

对于按位运算符或 +,-,*,/ 多个值,您可以使用 reduce()

const check = {
'>':(n1,n2) => n1 > n2,
'<':(n1,n2) => n1 < n2,
'&&':(...n) => n.every(Boolean),
'||':(...n) => n.some(Boolean),
'&':(...n) => n.slice(1).reduce((ac,a) => ac & a,n[0])
}

console.log(check['>'](4,6)) //false
console.log(check['<'](4,6)) /true
console.log(check['&&'](2 < 5, 8 < 10, 9 > 2)) //true

console.log(check['&'](5,6,7) === (5 & 6 & 7))

关于JavaScript——将 bool (或按位)运算符作为参数传递?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55896390/

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