JavaScript 减少三元运算符

JavaScript reduce ternary operator

这很愚蠢,但我很难理解这两个语句如何输出不同的结果。

'theyyyyy wheels on q bus'.split(' ').reduce((shortest, w) => {
   return  w.length < shortest.length ? shortest = w : shortest;
 }) // 'q'

'theyyyyy wheels on q bus'.split(' ').reduce((shortest, w) => {
  return shortest.length > w.lenght ? shortest = w : shortest;
}) // 'theyyyyy'

在第二种情况下,您有 w.lenght 未定义。更改为 w.length