编写一个名为“getLengthOfShortestElement”的函数。找到数组中最短元素的第一个实例
给定一个数组,“getLengthOfShortestElement”返回给定数组中最短字符串的长度。
备注: *如果数组为空,它应该返回0。
我的代码:
function getLengthOfShortestElement(arr) {
if (arr.length === 0) return 0;
return arr.sort(function(a, b){
return a.length> b.length;
}).unshift();
}
getLengthOfShortestElement(['one', 'two', 'three']); // 3
为什么不通过测试,它应该“处理关系”通过仅返回最短元素的第一个实例。另外,有没有更好的方法使空数组返回0?
你是什么意思“为什么不通过测试,它应该‘处理关系’仅返回最短元素的第一个例子“。 ?它应该返回一个长度还是一个实例?目前还不清楚 –
它返回给定数组中最短字符串的长度。如果多个元素共享相同的最短长度,它将返回仅第一个元素的长度。这是反馈我从REPL得到:对失败的测试 it_should_handle_ties 更多信息 错误:预计3为2 以n – sopstem2428
*“?有没有做一个空数组返回0的一种更好的方式” * - 这有什么错你目前使用的简单直接的技术?顺便说一句,你的排序函数应该'返回a.length - b.length;'(比较器不应该返回一个布尔值)。 – nnnnnn