Rumah > hujung hadapan web > tutorial js > Bagaimanakah Saya Boleh Mencipta Tatasusunan dengan Cekap dengan Nilai Julat dalam JavaScript?

Bagaimanakah Saya Boleh Mencipta Tatasusunan dengan Cekap dengan Nilai Julat dalam JavaScript?

Patricia Arquette
Lepaskan: 2024-12-16 12:17:10
asal
239 orang telah melayarinya

How Can I Efficiently Create Arrays with Ranging Values in JavaScript?

Mencipta Tatasusunan dengan Nilai Julat dalam JavaScript

Pengaturcara sering menghadapi keperluan untuk mencipta tatasusunan yang mengandungi julat nilai. Pendekatan biasa melibatkan gelung yang secara berulang menambah setiap elemen pada tatasusunan. Walau bagaimanapun, adakah terdapat kaedah yang lebih ringkas dan cekap tanpa menggunakan gelung?

Dalam ES6, JavaScript memperkenalkan dua kaedah utama untuk menyelesaikan isu ini: Array.from() dan keys(). Menggunakan Array.from(), seseorang boleh menukar objek lelaran kepada tatasusunan. Kaedah keys() mengembalikan iterator untuk kekunci objek tertentu. Menggabungkan kaedah ini, anda boleh mencapai penciptaan tatasusunan dengan julat nilai.

Penyelesaian Menggunakan Array.from() dan keys()

Array.from(Array(10).keys())
// Result: [0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
Salin selepas log masuk

Pendekatan di atas memanfaatkan fakta bahawa Array(n) mencipta tatasusunan panjang n, diisi pada mulanya dengan nilai yang tidak ditentukan. Dengan menggunakan kekunci() pada tatasusunan ini, kami memperoleh kunci tatasusunan yang boleh dilelang, yang sepadan dengan julat nombor yang dikehendaki. Array.from() kemudian menukar boleh lelar ini kepada tatasusunan.

Versi Lebih Pendek dengan Operator Hamparan

[...Array(10).keys()]
// Result: [0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
Salin selepas log masuk

Operator hamparan (...) membolehkan anda untuk mengembangkan sesuatu yang boleh diubah ke dalam elemen individunya. Oleh itu, versi lebih pendek bagi penyelesaian sebelumnya menggunakan operator hamparan untuk mencapai hasil yang sama.

Bermula dari 1

Untuk memulakan julat dari 1 dan bukannya 0, anda boleh menggunakan fungsi map() bersama dengan Array.from():

Array.from({length: 10}, (_, i) => i + 1)
// Result: [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
Salin selepas log masuk

Fungsi map() mengubah setiap elemen dalam lelaran. Di sini, setiap elemen ialah nilai yang diluluskan daripada tatasusunan asal, diwakili oleh pemegang tempat _, dan indeks yang sepadan, diwakili oleh i. Transformasi menambah 1 pada indeks, memulakan julat dari 1. Hasilnya kemudiannya dihantar ke Array.from() untuk mencipta tatasusunan akhir.

Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Mencipta Tatasusunan dengan Cekap dengan Nilai Julat dalam JavaScript?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
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
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan