javascript - Bagaimana cara bergantian secara elegan pada dua tatasusunan?
phpcn_u1582
phpcn_u1582 2017-05-19 10:41:15
0
2
580

Bahasa terhad: Javascript

Sebagai contoh, beberapa lubang aktiviti akan dimasukkan ke dalam senarai produk.

Sebagai contoh, terdapat dua tatasusunan A dan B dengan panjang berubah Kami memerlukan 6 elemen tatasusunan A + 1 elemen tatasusunan B untuk disusun seperti ini

Sebagai contoh, lebih banyak tatasusunan disusun berselang-seli

Apa yang saya boleh fikirkan ialah menukar tatasusunan ini kepada tatasusunan dua dimensi seperti paging, kemudian gunakan gelung untuk menggabungkannya menjadi tatasusunan, dan akhirnya melintasi.

Adakah cara yang lebih baik

phpcn_u1582
phpcn_u1582

membalas semua (2)
phpcn_u1582
var a = [1, 1, 1, 2, 2, 2, 3, 3, 3, 4, 4, 4, 5, 5, 5], b = [11,22,33,44,55]; a.reduce((acc,ele,idx) => ((idx + 1) % 3 ? acc.push(ele) : acc.push(ele, b.shift()), acc), []);

优雅么。。。

    巴扎黑
    export function join(first: T[], second: T[], firstSize: number, secondSize: number): T[] { let out: T[] = [] let i = 0 for (; firstSize * i < first.length && secondSize * i < second.length; i++) { out = out.concat( first.slice(firstSize * i, firstSize), second.slice(secondSize * i, secondSize), ) } out = out.concat(first.slice(firstSize * i), second.slice(secondSize * i)) return out }
      Muat turun terkini
      Lagi>
      kesan web
      Kod sumber laman web
      Bahan laman web
      Templat hujung hadapan
      Tentang kita Penafian Sitemap
      Laman web PHP Cina:Latihan PHP dalam talian kebajikan awam,Bantu pelajar PHP berkembang dengan cepat!