Javascript 从数组中删除具有匹配键的项

Javascript 从数组中删除具有匹配键的项,javascript,knockout.js,Javascript,Knockout.js,我有一个剔除视图模型,其中包含一个行对象数组和一个VisibleColumns对象数组,如以下屏幕抓图所示: 如您所见,VisibleCoumns数组包含与Rows数组的键匹配的值 我想删除在VisibleColumns数组中找不到键的行数组的键值对 这些数组将非常大,所以我想知道是否有一种典型的javascript方法可以非常有效地完成这类工作?类似这样的内容: for (var i = 0; i < Rows.length; i++) { var row = Rows[i];

我有一个剔除视图模型,其中包含一个行对象数组和一个VisibleColumns对象数组,如以下屏幕抓图所示:

如您所见,VisibleCoumns数组包含与Rows数组的键匹配的值

我想删除在VisibleColumns数组中找不到键的行数组的键值对

这些数组将非常大,所以我想知道是否有一种典型的javascript方法可以非常有效地完成这类工作?

类似这样的内容:

for (var i = 0; i < Rows.length; i++) {
    var row = Rows[i];

    var keys = Object.keys(row);
    for (var k = 0; k < keys.length; k++) {
        if (VisibleColumns.indexOf(keys[k]) === (-1)) {
            delete row[keys[k]];
        }
    }
}
for(变量i=0;i
您是否使用下划线?“请不要。我对JS世界很陌生-刚刚开始使用KnockoutJS您是否尝试过使用
ko.utils
过滤器根据您的需要过滤数组need@RobBowman如果你能编一些虚拟数据来展示你的数组结构,我可以帮你过滤。干杯