为什么没有替换参数值?

时间:2017-02-21 11:10:43

标签: javascript node.js loopback

我有这段代码

function(memo, value, key) {
    if (!!value) {
      memo.push({
        'property': 'loopbackFilter',
        'value': {
          key : {
            'like' : '%' + value + '%'
          }
        }
      });
    }
    return memo;
  }

Sublime Text说" key"参数未被使用,实际上生成的JSON对象是

"where": {
  "key": { <--- key is literally "key"
    "like": "%value%" (VALUE is an actual value, so it works here)
  }
}

为什么会这样?

1 个答案:

答案 0 :(得分:0)

JS对象文字与JSON对象不同:在JavaScript中,您不需要引用属性名称:

var obj = { foo: "bar" }

对于computed property names,请使用括号语法:

[key] : {
  'like' : '%' + value + '%'
}

请注意,这是ES6功能。