Terdapat masalah apabila fungsi getFirstHalf mengembalikan hasilnya
P粉311617763
P粉311617763 2023-09-22 08:49:09
0
1
662

Saya sedang membangunkan fungsi yang mengambil tatasusunan dan mengembalikan separuh pertama tatasusunan, tetapi sebelum mengembalikannya ia memanggil dirinya sendiri sehingga panjang tatasusunan ialah 1:

const getFirstHalf = function (array) { const firstHalf = []; for (let i = 0; i < Math.trunc(array.length / 2); i++) { firstHalf.push(array[i]); } if (firstHalf.length !== 1) { getFirstHalf(firstHalf); } return firstHalf; };

Semuanya berfungsi seperti yang diharapkan, sehingga baris di mana keputusan dikembalikan, tatasusunan mendapat nilai sebelumnya sehingga ia adalah separuh pertama keadaan pertama tatasusunan. Harap awak faham maksud saya.

Contohnya:

const myArray = [1,2,3,4,5,6,7,8]; console.log(getFirstHalf(numbers));

Saya menjangkakan mendapat [1] sebagai keputusan, tetapi saya mendapat [1,2,3,4].

P粉311617763
P粉311617763

membalas semua (1)
P粉009186469

Anda perlu mengembalikan hasil daripada rekursi:

akan

getFirstHalf(firstHalf);

ditukar kepada

return getFirstHalf(firstHalf);
    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!