我有這三個JavaScript數組結果數組:我需要幫助來實現邏輯來創建基於兩個arrayes
var arr1 = [
{id:32, "isNormal":true},
{id:4, "isNormal":false}},
{id:2, "isNormal":false},
{id:35, "isNormal":true},
{id:44, "isNormal":false}]
var arr2 = [
{id:32, "isNormal":false},
{id:4, "isNormal":false}},
{id:44, "isNormal":true},
{id:35, "isNormal":true},
{id:2, "isNormal":true}]
var arrResult = [
{externalId:32, startDate:currentDateTime, endDate:"null", "isNormal":false},
{externalId:4, startDate:"null", endDate:"null", "isNormal":false}},
{externalId:44, startDate:"null", endDate:"currentDateTime", "isNormal":true},
{externalId:35, startDate:"null", endDate:"null", "isNormal":true},
{externalId:2, startDate:"null", endDate:"currentDateTime", "isNormal":false}]
的陣列具有相同的ID。
我需要檢查ARR2與對象的相應屬性ARR1對象的isNormal財產(以相同的id),
如果arr1.isNormal =真,arr2.isNormal =假寫入arrResult.startDate當前日期和時間,
如果arr1.isNormal =虛假和arr2.isNormal =真寫arrResult.endDate當前日期和時間,
否則什麼也不做。
這裏對應ARR1和ARR2數組結果:
所以我的問題是什麼來實現這個優雅的方式?
@Nishantjani我知道我可以使用if和switch statments implenent它。但我想創造更優雅的東西 – Michael
我相信,排序兩個數組會降低運行時複雜度O(nlogn),而不是運行兩個嵌套for循環O(n^2)。這就是你所說的優雅的意思嗎? –
發佈您當前使用的解決方案,我們將會看到是否可以改進。 – Nonemoticoner