如何过滤大于x的数组值

Vem*_*god 2 html javascript arrays

我一直在互联网上四处浏览,尽管我确定这是一个非常简单的修复程序,但是找不到任何涵盖如何修复此问题的帖子。

基本上,我有一个带有数字值的数组,我想过滤掉所有大于10的数字并将它们添加到另一个数组中。到目前为止,这是我得到的,但是我得到的是第一个数组中的所有数字。

<!DOCTYPE html>
<html>
<body>
  <p id="demo"></p>
  <button type="button" onclick="alert(output)">Click Me!</button>
  <script>
    var input = new Array(9,3,4.3,24,54,8,19,23,46,87,3.14);
    var output = new Array();
    var length = 1;
    for (var i = 0; i < input.length; i += length) {
      output.push(input.slice(i, i + length).join(" "));
    }
  </script>
</body>
</html>
Run Code Online (Sandbox Code Playgroud)

Rūd*_*nis 5

function predicate(x) { return x > 10 }
var output = input.filter(predicate);
input = input.filter(function(x) { return !predicate(x) })
Run Code Online (Sandbox Code Playgroud)

使用ES6箭头功能看起来更加干净:

var predicate = (x) => x > 10;
var output = input.filter(predicate);
input = input.filter(x => !predicate(x));
Run Code Online (Sandbox Code Playgroud)