🎶 Sym - 一款用 Java 实现的现代化社区(论坛/BBS/社交网络/博客)平台

📕 思源笔记 - 一款桌面端笔记应用,支持 Windows、Mac 和 Linux

🎸 Solo - B3log 分布式社区的博客端节点,欢迎加入下一代社区网络

♏ Vditor - 一款浏览器端的 Markdown 编辑器

Array - longestItem

2019-05-16

描述

传入任意数目的可迭代对象或包含 length 属性的对象,返回其中最长的一个对象。如过多个对象有同样的长度,则返回前面的一个。如果没有对象传入的话,则返回 undefined

提示

  • 使用 Array.prototype.reduce() 比较对象的 length
  • 返回 length 最长的对象

代码

const longestItem = (...vals) => vals.reduce((a, x) => (x.length > a.length ? x : a));

示例

获取最长的对象:

longestItem('this', 'is', 'a', 'testcase'); // 'testcase'
longestItem(...['a', 'ab', 'abc']); // 'abc'
longestItem(...['a', 'ab', 'abc'], 'abcd'); // 'abcd'
longestItem([1, 2, 3], [1, 2], [1, 2, 3, 4, 5]); // [1, 2, 3, 4, 5]
longestItem([1, 2, 3], 'foobar'); // 'foobar'

返回总目录

每天 30 秒系列之 JavaScript 代码


欢迎注册黑客派社区,开启你的博客之旅。让学习和分享成为一种习惯!

推荐阅读
留下你的脚步