请问有什么函数可以把‘>’ '>='这种字符串转换为 符号吗

2022-07-15 18:41:26 +08:00
 muunala10221

就是转换成可以运算的 > >=

这样的代码: switch (condition.type) { case '>': status = value > condition.val ? 'Firing' : 'Normal' break case '>=': status = value >= condition.val ? 'Firing' : 'Normal' break } 我想写的简短优雅一点 if (condition.type) { status = value Symbol(condition.type) condition.val ? 'Firing' : 'Normal' }

上面这个 Symbol(condition.type) 是我臆想出来的方法😅 ,不知道是否有这样的函数,我查到了 eval()但是不符合我的需求

1322 次点击
所在节点    JavaScript
4 条回复
codehz
2022-07-15 19:44:21 +08:00
c=(op)=>new Function('a','b',`return a${op}b`)
用法:c('>')(1, 2)
secondwtq
2022-07-15 22:28:09 +08:00
感觉楼主要找的这种解决方式不太“优雅”( /t/861048 )
不知道楼主看没看过 LISP ,这些操作符就是个函数而已,做个 map 就是了
muunala10221
2022-07-16 00:18:18 +08:00
@codehz 牛 谢谢
muunala10221
2022-07-16 00:18:46 +08:00
@secondwtq 也是想多看看别人的思路,题目中的代码应该是大多数人的写法

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/866494

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX