作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我想从此数组中找到更长的字符串:
const myArr = ["第一", "第二", "第三", "第四", "第五", "第六", "七", "第八"]
在此数组中,“第二”、“第四”、“第八”的长度为 6。我想以数组形式返回它们。
const myArr = ["first", "second", "third", "fourth", "fifth", "sixth", "seven", "eighth"]
function longerStrings(arr) {
let largeStrings = []
let longerWord = ''
for (let name of arr) {
if (name.length > longerWord.length) {
longerWord = name
largeStrings.push(longerWord)
}
}
return largeStrings
}
longerStrings(myArr)
预期输出:[“第二”,“第四”,“第八”]
但返回 =["first","second"]
最佳答案
如果您使用过滤器,会更容易:
const myArr = ["first", "second", "third", "fourth", "fifth", "sixth", "seven", "eighth"]
const longest = myArr.reduce((a, b) => a.length > b.length ? a : b);
const res = myArr.filter(el => el.length >= longest.length)
console.log(res)
返回:
["second","fourth","eighth"]
或者,正如 Sash 下面提到的,它可以一次性完成,尽管解决方案不那么可读:
let max = 0;
const reducer = myArray.reduce((previous, current) => {
if (current.length > max) {
previous = [];
}
if (current.length >= max) {
previous.push(current);
max = current.length;
}
return previous;
}, []);
console.log(reducer);
关于javascript - 如何从数组中找到更长的字符串?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/72809389/
所以我的问题是: 为什么(以及如何避免)C# 中的 Is 运算符的生命周期比 if 中使用的更长? 例子: Animal a = new Cat(); if (a is Cat c) { Co
我遇到了这个问题,我已经尝试解决了很长一段时间。理想情况下,我希望 particles.js 的“生成框”向下延伸到页面底部(由 fullpage.js 计算的 7 x viewport),这样当使用
我想让一个 div(我的侧边栏)延伸到页面底部。我知道我需要添加“高度:100%;”为了做到这一点。 但是当我添加 height: 100%; 时,内容少于侧边栏的页面会降低侧边栏的高度,然后您就看不
只有我这么认为吗,还是在 SQL Server 2008 Management Studio 中扩展数据库列表比在 SQL Server 2005 Management Studio 中扩展数据库列表
我是一名优秀的程序员,十分优秀!