jquery - 从 jquery 中的另一个数组创建一个项目数组

标签 jquery arrays linq

我有以下数组

var Fruits = [
  {
    "Name": "Apple,Orange",
    "id": "20"
  },
  {
     "Name": "Mango",
     "id": "40"
  }
];

我想创建一个新数组,其中包含 id 与给定 id 匹配的所选项目的名称。就像我们在 C# linq 中所做的那样:

var givenId = 20
var newArray = fruits.Select(x=>x.Name).Where(y=>y.id == givenId)

所以我的 newArray 变成 ['Apple', 'Orange']

最佳答案

您可以使用Array.prototype.filter() Array.prototype.map() 去做这件事。

演示:

var Fruits = [
  {
    "Name": "Apple,Orange",
    "id": "20"
  },
  {
     "Name": "Mango",
     "id": "40"
  }
];

var given_id = 20;

var result = Fruits.filter(val => val.id == given_id).map(val => val.Name);
console.log(result);

关于jquery - 从 jquery 中的另一个数组创建一个项目数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57143437/

相关文章:

c# - 如何拆分多个级别的成员访问权限

javascript - 在 jQuery 中限制事件调用

c - 传递二维数组之间的区别

sql - COUNT(1) OVER() with Linq to Sql

c - 使用辅助结构在 O(N) 时间内查找数组是否有重复项

c++ - 在C++中向文件写入和加载大数组

c# - 查询数据表字段包含列表中任意项的行<string>

javascript - 使用jquery使图像从左到右显示

javascript - 在javascript中搜索ajax请求元素的索引

javascript - 是否有与我们在 ASP.net 中使用的文本编辑器等效的 JSP