gpt4 book ai didi

Javascript - 如何从数组中获取非零值?

转载 作者:行者123 更新时间:2023-11-30 07:24:50 25 4
gpt4 key购买 nike

我有一个数组,它一次只有一个非零值和其他 0 值。例如,它可能是

[0,0,0,0,0,0,0,1234,0,0,0] 
// or
[0,0,2823,0,0,0,0,0,0,0,0]
//...

我的问题是,如何使用 javascript 从数组中获取这个非零值。

我知道我可以遍历数组并在找到非零值后立即返回它,但我想知道 javascript 是否提供了执行此操作的任何功能?

最佳答案

你可以从数组中过滤掉它:

[0,0,0,0,0,0,0,1234,0,0,0].filter(function(x) { return x; }).pop();  // 1234

作为@Sarath在评论中提到,如果你的初始数组可能有其他falsy非数值(如falseundefined''等)你可以添加一个严格的比较:

[0,0,0,0,0,0,0,1234,0,0,0].filter(function(x) { return x !== 0; }).pop();

数字数组的另一个简短解决方案是使用 reduce 方法:

[0,0,0,0,0,0,0,1234,0,0,0].reduce(function(a, b) { return a + b; }); // 1234

注意:检查 filter 的浏览器兼容性和 reduce方法并在需要时使用 polyfill。

关于Javascript - 如何从数组中获取非零值?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20744960/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com