看到了一个表情。 Javascript错误

时间:2018-06-13 07:40:27

标签: javascript

所以,我有一个典型的问题Expected an assignment or function call and instead saw an expression.我知道这里有很多这样的问题和答案,但是没有人帮助我。

请提供真正的帮助,不要阻止我的问题。

谢谢!

Object.keys(CDs).map(key => {
  parseInt(key) === additionalInfo.currentQueue[0] // Expected an assignment or function call and instead saw an expression
    ? CDs[key] += 1
    : CDs[key]
})

1 个答案:

答案 0 :(得分:0)

警告告诉您,那里有一个孤立的表达式,一个与任何东西都没有连接的表达式。三元组将解析为CDs[key]CDs[key] + 1的值,但该值将被忽略 - 它类似于<{p>}中的5

function x() {
  5;
}

如果您打算map CDs新数组的键,请使用箭头函数的隐式返回,将括号中的表达式括在括号中而不是括号中:

const result = Object.keys(CDs).map(key => (
  parseInt(key) === additionalInfo.currentQueue[0]
    ? CDs[key] + 1 // were you intending to mutate the original object as well here?
    : CDs[key]
));

如果您不打算在此CDs期间改变map,则可以考虑使用Object.entries,一次性为您提供密钥和值:

const result = Object.entries(CDs).map(([key, value]) => (
  parseInt(key) === additionalInfo.currentQueue[0]
    ? value + 1
    : value
));