javascript - 将数组分成两部分

标签 javascript jquery arrays

我正在尝试拆分一个包含 n 个元素的数组(数组元素数总是可以除以 2),例如我有一个包含 20 个元素的数组,现在我可以拆分 the first 10 elements and show it但我不知道如何拆分接下来的 10 个元素,这是我的代码,可以或多或少地了解我想要做的事情:

var array = "1, 5, 4, 3, 2, 6, 7, 8, 6, 55, 4, 33, 67, 7, 65, 45, 34, 32, 12, 23";
var array1 = [];
var array2 = [];

$(document).ready(function() {
  $('#btn').click(function() {
    magic();
  });
});

function magic() {
  var split;
  var data = array.split(",");
  var total = data.length;

  for (var i = 0; i < total / 2; i++) {
    array1.push(data[i]);
  }

  $('#a1').text(array1);

}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<button id="btn">Magic!</button>

<div>
  <h4>Array 1</h4>
  <p id="a1"></p>
</div>

<hr>

<div>
  <h4>Array 1</h4>
  <p id="a2"></p>
</div>

如果您看到我的代码,数组 2 个元素必须是:

4, 33, 67, 7, 65, 45, 34, 32, 12, 23

我应该怎么做才能做到这一点?换句话说,如果我有 50 个元素,我想填充 array 1前 25 个元素和 array 2与其余元素。预先感谢您的帮助!

最佳答案

您可以使用Array#slice

var array = "1, 5, 4, 3, 2, 6, 7, 8, 6, 55, 4, 33, 67, 7, 65, 45, 34, 32, 12, 23";

$(document).ready(function() {
  $('#btn').click(function() {
    magic();
  });
});

function magic() {
  $('#a1').text(array.slice(0, array.length / 2));
  $('#a2').text(array.slice(array.length / 2));
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<button id="btn">Magic!</button>
<div>
  <h4>Array 1</h4>
  <p id="a1"></p>
</div>
<hr>
<div>
  <h4>Array 1</h4>
  <p id="a2"></p>
</div>

关于javascript - 将数组分成两部分,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40381046/

相关文章:

javascript - 从数组中拆分具有多个分隔符的字符串

javascript - 带鼠标悬停 javascript 的链接菜单

javascript - HTML、CSS 和 JS 动画多个进度条

javascript - 分页后无法调用 onclick 事件的数据表?

javascript - ajax调用可能有问题

arrays - 为什么 slice 变量在一遍又一遍地分配时不会被覆盖?

javascript - 有没有更好的方法来制作具有随机开始和结束动画的复杂动画?

javascript - 向动态创建的表添加 datatable 属性

javascript - jQuery 超大 : how to use array created from LI?

java - 如何摆脱 int 数组中的重复值?