相对于角度控制器中的另一个阵列过滤阵列项目
filter array items with respect to another array in angular controller
我有一个列表
$scope.list1= [{"name":"name1","id":1},{"name":"name2","id":2},{"name":"name3","id":3},{"name":"name4","id":4}];
我想过滤这个列表相对于另一个列表作为,
$scope.list2=[1,3];
这里我想要筛选list1,这样只剩下那些在list2中的对象项。即
过滤后
$scope.list1= [{"name":"name1","id":1},{"name":"name3","id":3}];
我可以使用拼接功能来完成此操作。但我想问一下,是否可以在不使用循环的情况下使用$filter来实现这一点。
使用开源项目jinqJs可以轻松做到这一点http://www.jinqJs.com
参见Fiddle
var list1= [{"name":"name1","id":1},{"name":"name2","id":2},{"name":"name3","id":3},{"name":"name4","id":4}];
var list2= [1,3];
var result = jinqJs().from(list1).where(function(row){
return (list2.indexOf(row.id) > -1);
}).select();
或
这边
//Use jsJinq.com open source library
var list1= [{"name":"name1","id":1},{"name":"name2","id":2},{"name":"name3","id":3},{"name":"name4","id":4}];
var list2= [1,3];
var result = jinqJs().from(list1).join(list2).on('id').select();
document.body.innerHTML += '<pre>' + JSON.stringify(result, null, 4) + '</pre>';
<script src="https://rawgit.com/fordth/jinqJs/master/jinqjs.js"></script>
相关文章:
- 当包含另一个asp文件时,是否也包含所有引用的样式和脚本页面
- 使用clickToggle并在单击另一个元素时关闭元素
- 使用javascript将动态表从一个html页面打印到另一个html页
- 如何在android中使用phonegap将文件从一个文件夹移动/复制到另一个文件夹
- 如果使用 lodash 将属性存在于另一个对象中,则向对象添加属性
- 另一个ajax调用中的Jquery ajax调用在for循环中没有按预期工作
- 从Rally获取一个特定的标记,以便计算另一个字段中的值
- 无法从jquery Mobile导航栏重定向到另一个页面
- 如何在JQuery函数中定义一个值,然后调用另一个函数并使用该值
- 是否可以将一个函数输入连接到另一个函数调用的文本
- 字符串在将其传递给另一个活动Android JavaScript时读取Null
- 如何在鼠标悬停时在另一个图像上滑动图像.
- 导航到特定事件的另一个变量页面
- 相对于角度控制器中的另一个阵列过滤阵列项目
- 将另一个文件中的对象添加到单独文件中的阵列中
- angularjs阵列拼接到另一个元素
- 将阵列转换为另一个阵列
- 如何根据另一个节点中的数据对 Firebase 阵列进行排序
- 考虑到来自另一个阵列的索引,拼接阵列中的项
- 这些2D阵列包含不同结构的相同信息.如何将一个转换为另一个