将字符串转换为javascript中的操作

Mat*_*ers 1 javascript logical-operators coffeescript

有没有办法翻译类似下面的逻辑操作(由于用户输入使用字符串)?或者我是否必须检查每种可能性?(> <=> == = <等)

var x = 5;
var y = 3;
var operator = '>'

if (x operator y)
  doSomething();

    |
    |
    v

if (x > y)
  doSomething();
Run Code Online (Sandbox Code Playgroud)

Nin*_*olz 5

是的,有一个对象和适当的功能,比如

var comparer = {
    '>': function (a, b) { return a > b; }
};
Run Code Online (Sandbox Code Playgroud)

使用:

if (comparer[operator](x, y)) {
    doSomething();
}
Run Code Online (Sandbox Code Playgroud)