目前这样做的挑战:https://www.codewars.com/kata/shortest-word/train/javascript为什么在reduce函数中返回局部变量的长度会引发错误?
查找字符串中最短的单词长度。
这工作:
function findShort(s){
return s.split(' ').reduce((a, b) => b.length < a.length ? b : a).length;
}
但这并不:
function findShort(s){
return s.split(' ').reduce((a, b) => b.length < a.length ? b.length : a.length);
}
任何想法,为什么我不能返回的长度或b即使它们应该是字符串?我清楚地缺少的东西在这里...
感谢
你不需要编写自己的逻辑来找到列表的最小值--Math.min已经做到了。尝试'Math.min(... s.split('').map(({length})=> length)'。 – 2017-01-22 17:03:21