編寫一個名爲「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