为什么不替换参数值?
Why doesn't parameter value get replaced?
我有这段代码
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)
}
}
为什么会这样?
JS 对象文字与 JSON 对象不同:在 JavaScript 中你不需要引用 属性 名称:
var obj = { foo: "bar" }
对于 computed property names 使用括号语法:
[key] : {
'like' : '%' + value + '%'
}
另请注意,这是 ES6 的功能。
我有这段代码
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)
}
}
为什么会这样?
JS 对象文字与 JSON 对象不同:在 JavaScript 中你不需要引用 属性 名称:
var obj = { foo: "bar" }
对于 computed property names 使用括号语法:
[key] : {
'like' : '%' + value + '%'
}
另请注意,这是 ES6 的功能。