当地图的条件为真时,我只需要将结果分配给“值”

Posted

技术标签:

【中文标题】当地图的条件为真时,我只需要将结果分配给“值”【英文标题】:I need to assign to "value" only the result when the condition of the map is true 【发布时间】:2020-11-25 07:18:24 【问题描述】:

const arr= [1,2,3,4,5];

value=arr.map(item => item>4  &&  item)
console.log(value);

结果值=[假,假,假,假,5] 我需要什么:值=5;

【问题讨论】:

改用过滤器 【参考方案1】:

您可以改用 .filter 方法来实现该场景。

const arr= [1,2,3,4,5];

value=arr.filter(item => item>4  &&  item)

console.log(value);

【讨论】:

value=parseFloat(arr.filter(item => item>4 && item )) 谢谢 如果有更多的符合条件的元素呢? const arr1= [1,2.1,3,8,4.2];常量 arr2= [1,2.1,3,4,5]; arr1.map(item1 => const value=Math.max(...arr2.map(item2 => (item1 === item2 ? item2 : 0 ))) console.log(value) ) //当第一个数组中的 id 匹配第二个数组中的 id -> 显示 id 否则显示零(这是我需要的) 好的,我明白了,我想你在问题中没有提到同样的内容。【参考方案2】:

使用过滤器!

const arr= [1,2,3,4,5];

value=arr.filter(item => item>4  &&  item)
console.log(value);

【讨论】:

【参考方案3】:

在末尾添加 .filter(e=>e) (简答我正在接电话)

【讨论】:

【参考方案4】:
Use Array.prototype.filter()

filter() 方法创建一个新数组,其中包含通过所提供函数实现的测试的所有元素。

语法

让 newArray = arr.filter(callback(element[, index, [array]])[, thisArg])

Read more in MDDN

const arr= [1,2,3,4,5];

var value = arr.filter((number) => number > 4);

console.log(value)

【讨论】:

以上是关于当地图的条件为真时,我只需要将结果分配给“值”的主要内容,如果未能解决你的问题,请参考以下文章

当 2 个条件为真时从 JSON 获取值

当条件为真时,ios 禁用后退按钮是不是是一种良好的用户体验?

当属性和数据值为真时 WPF 触发

当条件为真时,Pandas将数据帧分成多个

基本布尔逻辑——如何仅在另一个条件为真时测试条件

Oracle:两个条件都为真时的条件非空约束