Rumah >hujung hadapan web >Soal Jawab bahagian hadapan >Bagaimana untuk menukar tatasusunan dua dimensi es6 kepada tatasusunan satu dimensi

Bagaimana untuk menukar tatasusunan dua dimensi es6 kepada tatasusunan satu dimensi

WBOY
WBOYasal
2022-04-25 16:57:493334semak imbas

Dalam es6, anda boleh menggunakan kaedah flat() untuk menukar tatasusunan dua dimensi kepada tatasusunan satu dimensi Kaedah ini akan "meratakan" lapisan tatasusunan secara lalai bilangan lapisan yang akan ditukar. Kaedah ini Ia hanya mengembalikan tatasusunan baharu dan tidak mengubah tatasusunan asal Sintaksnya ialah "tatasusunan dua dimensi.flat()".

Bagaimana untuk menukar tatasusunan dua dimensi es6 kepada tatasusunan satu dimensi

Persekitaran pengendalian tutorial ini: sistem Windows 10, ECMAScript versi 6.0, komputer Dell G3.

Cara menukar tatasusunan dua dimensi es6 kepada tatasusunan satu dimensi

Kaedah: rata(); parameter boleh diterima 2, 3, 4..., Infiniti; rata ():

1. Bertanggungjawab untuk menukar tatasusunan berbilang dimensi ---> tatasusunan satu dimensi. Kaedah ini mengembalikan tatasusunan baharu dan tidak mempunyai kesan ke atas data asal.

2.flat() hanya akan "meratakan" satu tahap secara lalai dan lalainya ialah 1. Jika anda ingin "meratakan" tatasusunan bersarang berbilang peringkat, anda boleh menulis parameter bagi kaedah flat() sebagai Integer yang menunjukkan bilangan lapisan yang anda ingin tingkatkan.
[1,2,[2,3],[2,2]].flat()
//[1, 2, 2, 3, 2, 2]

3 Jika anda ingin menukarnya kepada tatasusunan satu dimensi tidak kira berapa banyak tahap sarang yang ada, anda boleh menggunakan kata kunci Infiniti sebagai parameter.
[1, 2, [3, [4, 5]]].flat()
// [1, 2, 3, [4, 5]]
[1, 2, [3, [4, 5]]].flat(2)
// [1, 2, 3, 4, 5]

Jika tatasusunan asal mempunyai jurang, kaedah rata() akan melangkau jurang.

Contoh adalah seperti berikut:
[1, [2, [3,4]]].flat(Infinity)
// [1, 2, 3, 4]
[1, 2, , 4, 5].flat()
// [1, 2, 4, 5]

[Cadangan berkaitan:
        const a = [1, 2, 3, 4, 3];
 
        const b = [3, 4, [5, 6]];
 
        const c = [3, 4, [5, 6, [7, 8]]];
 
        // 不传默认是二维数组降一维数组
        console.log(a.concat(b).flat());  // 打印为[1, 2, 3, 4, 3, 3, 4, 5, 6]
 
        console.log(a.concat(c).flat(3))  // 打印为[1, 2, 3, 4, 3, 3, 4, 5, 6, 7, 8]
 
        // 如果数组嵌套太过复杂可直接传值Infinity
        console.log(a.concat(c).flat(Infinity)) // 打印为[1, 2, 3, 4, 3, 3, 4, 5, 6, 7, 8]
tutorial video javascript

, bahagian hadapan web]

Atas ialah kandungan terperinci Bagaimana untuk menukar tatasusunan dua dimensi es6 kepada tatasusunan satu dimensi. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn