javascript - 将现有数组插入多个数组js

标签 javascript html arrays

我想为列表中的事件项目和非事件项目创建一个数组。我目前有以下代码。下面的代码可以工作,但是我希望格式与现有数组相同。

  var myData = [
    {"text" : "item 1", "id":11111,  "active" : 0 },
    {"text" : "item 2", "id":22222,  "active" : 1 },
    {"text" : "item 3", "id":33333,  "active" : 1 },
    {"text" : "item 4", "id":44444,  "active" : 0 }  
  ];
  console.log(myData[0].text); //returns item 1
  var active = [];
  var inactive = [];
  for (var i = 0; i < myData.length; i++) {
          if(myData[i].active) {
              active.push({
                items: myData[i];
              });
          }
          else {
              inactive.push({
                items: myData[i];
              });
          }
  }
  console.log(active[0].items.text);  //returns item 2
  console.log(inactive[0].items.text); //returns item 1

我似乎无法弄清楚如何在不命名的情况下将整个对象插入数组。

我想设置我的数组,以便我可以 console.log

事件[0].文本

而不是必须去到下一个级别然后再去

事件[0].items.text

有没有办法可以在不命名的情况下推送整个对象?

最佳答案

 var myData = [
    {"text" : "item 1", "id":11111,  "active" : 0 },
    {"text" : "item 2", "id":22222,  "active" : 1 },
    {"text" : "item 3", "id":33333,  "active" : 1 },
    {"text" : "item 4", "id":44444,  "active" : 0 }  
  ];
  console.log(myData[0].text); //returns item 1

var active = myData.filter(function(data){
  return data.active;
});

var inactive = myData.filter(function(data){
  return !data.active;
});

或者也许让它成为一个函数

function getData(type){
  return myData.filter(function(data){
     return (type == 'active') ? data.active : !data.active;
  });
}

如果您已经在使用 ES6 箭头函数,您可以将它们缩短为:

var active = myData.filter(data => data.active);
var inactive = myData.filter(data => !data.active);

function getData(type){
  return myData.filter(data => (type == 'active') ? data.active : !data.active);
}

关于javascript - 将现有数组插入多个数组js,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28445401/

相关文章:

php - 如何拆分数组以将其插入另一个数组以进行 SQL 查询?

javascript - 以数组形式返回对象的所有键或值的函数

javascript - 滚动 div 时以及页面加载时运行函数?

javascript - 谷歌可视化表allowHtml选项在谷歌网站上不起作用

javascript - HTML Popup Div 到任何屏幕分辨率的屏幕中心

javascript - 之前,不替换

javascript - 如何从 window.selection() 获取文本样式?

php - 无需重新加载页面的聊天客户端/帖子

javascript - 使用 Cookie 日志记录点击 3 次时替换 DIV 元素

javascript - 如何访问数组中的 javascript 键/值对