以下のコードでは、長い時間がかかります。JavaScriptの配列を効率的にフィルタリングする方法
var table = new Array();
for(var i =0; i< dtObjects.Rows.length; i++)
{
for(var j=0; j< dtColumns.Rows.length; j++)
{
for(var k=0; k< dtTypes.Rows.length; k++)
{
if((dtObjects.Rows[i].Id == dtColumns.Rows[j].Id) && (dtColumns.Rows[j].xtype == dtTypes.Rows[k].xtype))
table.push({
TableName : dtObjects.Rows[i].Name,
Type: dtObjects.Rows[i].type,
ColumName: dtColumns.Rows[j].Name,
DataType: dtTypes.Rows[k].Name,
Length : dtColumns.Rows[j].Length
});
}
}
}
dtObjects.Rows.length = 900
dtColumns.Rows.length = 1500
dtTypes.Rows.length = 30
でこれを(フィルター)を達成するためにとにかくあり秒ですか?
私は答えを知らないが、私は答えにかなり興味がある。 – Qpirate
は要素数の関係は常に同じですか? ( 'dtTypes.rows.length' <' 'dtObjects.Rows.length' <' dtColumns.Rows.length') –
いいえ。長さは任意です。 –