选择小于数组中变量的最大数字

2024-06-25

我有一个 JavaScript 数组和一个变量,如下所示;

var a = [0, 1200, 3260, 9430, 13220],
    b = 4500;

选择数组中仍然小于或等于变量的最大值的最聪明方法是什么?

在此示例中,我需要选择3260.

我可以做这样的事情;

$.each(a, function(i){
    if(a[i] <= b && a[i+1] > b){
        var c = a[i];
        return false;
    }
});

但我认为如果所选数组值是最后一个值,这可能不起作用。更不用说,对我来说,它看起来像是很多相当简单的代码。

有没有更聪明/更简洁的方法来实现我所追求的目标?

(是的,我知道我不应该使用 jQuery 循环,但我在输入示例时很懒)


另一种方法是通过数组过滤和 apply() 的组合,我认为这是一种非常可读的方法。 对filter() 的调用仅返回a 中不满足谓词函数的元素数组,然后apply() 以每个元素作为参数调用Math.max。

var a = [1, 2, 3, 4, 5];
var b = 4;
var result = Math.max.apply(Math, a.filter(function(x){return x <= b}));

结果将等于 4。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

选择小于数组中变量的最大数字 的相关文章

  • 使用 IE 11 和 AngularJS 的 2 路数据绑定问题

    我最近在使用 AngularJS 的 Web 应用程序上构建了一个功能 但在 IE 11 上遇到了一些问题 apply 将数据更改写入 DOM 由于某种原因 这种情况仅有时发生 而当我尝试调试问题时却从未发生 这使得它看起来像是一个计时问题
  • 用玩笑模拟高阶组件

    我想确保 HOC 组件被开玩笑地调用 但我似乎无法理解jest mock上班 我的 HOC 是这样的 const withEntity args gt const wrappedComponent WrappedComponent gt c
  • Rails:将值序列化为逗号分隔而不是 YAML

    我正在寻找一种方法来存储例如的序列化值 列中的 ID 在之前的声明中 这不是最佳设计 该列用于关联记录的 ID 但仅在显示记录时使用 因此不会对该列进行选择进行查询 也不会对此列进行联接任何一个 在 Rails 中 我可以使用以下方法序列化
  • 在 foreach 循环中使用 next

    我正在使用 foreach 循环数组 在特定情况下 我需要在迭代到达下一个元素 如预测 之前知道下一个元素的值 为此 我计划使用该功能next http www php net manual en function next php 在文档
  • 获取访客的 Optimizely A/B 测试和变化

    当我在网站上运行实验时 我希望能够找出当前访问者看到的测试和变体 我无法找到如何做到这一点优化Javascript API https www optimizely com docs api 您可以获得第一个正在运行的实验的 ID 假设您有
  • `forEach` 函数中的 `return` 关键字是什么意思? [复制]

    这个问题在这里已经有答案了 button click function 1 2 3 4 5 forEach function n if n 3 it should break out here and doesn t alert anyth
  • 在 json 对象中执行 javascript 代码?

    有远吗 所以像这样 key1 val1 key2 val2 some code document getElementById someid innerHTML test 那么 some code 会在没有任何用户干预的情况下执行吗 No
  • 如何从 ByteBuffer 转换为 Integer 和 String?

    我转换了一个int使用 ByteBuffer 的字节数组putInt 方法 我该如何做相反的事情 那么将这些字节转换为 int 吗 此外 我使用 String 的将字符串转换为字节数组getBytes 方法 我如何将其反过来转换 这byte
  • Javascript CORS 图像/画布操作

    我正在尝试从另一个已配置为允许 CORS 的域检索图像 并操纵像素 然后我想显示结果并能够操纵结果 我可以在我请求的图像上使用 getImageData 和 toDataURL 所以我知道服务器部分可以工作 但是 当我尝试将图像的 src
  • 设置三个输入数字的最大值

    我有三个输入数字
  • jQuery onclick 隐藏其父元素[关闭]

    很难说出这里问的是什么 这个问题是含糊的 模糊的 不完整的 过于宽泛的或修辞性的 无法以目前的形式得到合理的回答 如需帮助澄清此问题以便重新打开 访问帮助中心 help reopen questions 我想隐藏 li tag on a 使
  • 在 Bootstrap 选择器上使用 jQuery 取消选择选项

    我对一些 UI 元素使用 Bootstrap SelectPicker 它允许用户选择多个选项并将其呈现在段落标签中的屏幕上 他们还应该能够删除选定的选项 这是我的代码 用于将选定的选项渲染到屏幕上 以便每个选项旁边都会显示一个 X 单击它
  • 重复 Pinterest Facebook 邀请功能

    I m trying to duplicate Pinterest s Invite Friends functionality In case you haven t seen what it looks like it looks li
  • 从数组中删除空字符串,同时保持记录而不循环?

    这个问题在这里被问到 从数组中删除空字符串 同时保留非空字符串的索引记录 https stackoverflow com questions 18113243 remove empty strings from array while ke
  • execCommand 的替代品

    我希望创建一个所见即所得编辑器 使用 jQuery 作为框架 我可以使用不同的方法来简化生产 我现在确实有一个正在工作的编辑 而且运作良好 我使用 iFrame 并将其设计模式设置为打开并从那里开始 然而 有一些事情困扰着我 以更改所选文本
  • React cloneElement 未设置键

    我正在构建一个动态生成键的表控件 我理解这可能不是一个好主意 我想键应该与其代表的数据唯一关联 否则 React 只能为我们生成唯一的 id 但无论哪种方式似乎没有设置按键 我不知道为什么 表中的行是用可以找到的函数生成的here http
  • Javascript - 通过键获取特定 JSON 数组元素内的属性值

    我有一个像这样的 JSON 结构 map key1 valueA1 key2 valueA2 key3 valueA3 key1 valueB1 key2 valueB2 key3 valueB3 key1 valueC1 key2 val
  • Promise链基本问题

    我正在尝试理解 Promise 我创建了一些有效的承诺链 而另一些则无效 我已经取得了进步 但显然缺乏基本概念 例如 以下承诺链不起作用 这是一个愚蠢的例子 但说明了问题 我正在尝试在链中使用 Node 的函数 randomBytes 两次
  • 如何将国家/地区代码与电话号码分开?

    我的数据库中有很多电话号码 例如 1 123 456 7890 我要做的是将国家 地区拨号代码 在本例中为美国 加拿大的 1 与电话号码分开 我尝试创建所有国家 地区的 JSON 列表 并在加载页面时将电话号码和国家 地区代码分开 它工作正
  • ASP.NET MVC3 Ajax.ActionLink - 条件确认对话框

    我有一个 Ajax ActionLink 仅当满足某些条件 用户有未保存的更改 时 我才希望显示一个确认对话框 我创建了一个 JavaScript 函数 它根据需要显示确认对话框 并根据响应返回 true 或 false 我将其绑定到 Ac

随机推荐