Jadual Kandungan
Kaedah String.slice()
String.substring() kaedah
Kes 7
Kaedah menghiris dan substring
Kesimpulan
Rumah hujung hadapan web tutorial js Perbezaan antara kaedah penghirisan rentetan dan subrentetan

Perbezaan antara kaedah penghirisan rentetan dan subrentetan

Sep 03, 2023 pm 06:21 PM

Perbezaan antara kaedah penghirisan rentetan dan subrentetan

JavaScript ialah bahasa pengaturcaraan dinamik dan paling popular yang boleh digunakan pada kedua-dua bahagian klien dan pelayan. JavaScript digunakan untuk membuat halaman web interaktif. Ia mempunyai banyak rangka kerja, seperti React JS, Angular JS, Node JS, dll.

JavaScript mengandungi banyak fungsi terbina dalam untuk melaksanakan pelbagai tugas. Terdapat fungsi untuk memanipulasi rentetan. Str.slice dan str.substring ialah dua fungsi inbuit yang boleh beroperasi pada rentetan. Walaupun fungsi kedua-dua fungsi ini hampir serupa, terdapat beberapa perbezaan antara keduanya

Kaedah String.slice()

Kaedah ini mengembalikan sebahagian daripada rentetan berdasarkan indeks yang ditentukan. Sintaks kaedah slice adalah seperti berikut -

string.slice (start, end)
Salin selepas log masuk

Kaedah ini mempunyai dua parameter, mula dan tamat. Mula menentukan indeks dari mana ia harus bermula, dan indeks akhir memberitahu indeks terakhir rentetan untuk dikembalikan. Indeks pengakhiran tidak disertakan semasa mengembalikan rentetan. Pengakhiran tidak perlu. Jika penghujung tidak ditentukan, mengembalikan keseluruhan rentetan bermula pada indeks permulaan yang ditentukan. Di sini, indeks bermula dari "0".

String.substring() kaedah

Kaedah ini juga serupa dengan kaedah menghiris, mengembalikan sebahagian daripada rentetan sebagai rentetan baharu. Sintaks kaedah ini adalah seperti berikut -

string.substring (start, end)
Salin selepas log masuk

Di sini, mula dan tamat ialah dua parameter, menunjukkan indeks rentetan yang perlu dikembalikan. Jika indeks akhir tidak ditentukan, keseluruhan rentetan bermula pada indeks permulaan yang ditentukan dikembalikan. Indeks pengakhiran tidak disertakan semasa mengembalikan rentetan. Indeks bermula dari "0".

Pertimbangkan rentetan "Selamat Pagi" dengan panjang tali 12. Marilah kita memahami fungsi kaedah ini melalui contoh berikut -

const greeting = 'Good Morning'
Salin selepas log masuk

Kes 1

Jika indeks permulaan adalah positif, kedua-dua kaedah memberikan output yang sama.

greeting.slice (5)  		//  'Morning'
greeting.substring (5)  	// 'Morning'
Salin selepas log masuk

Di sini, indeks diambil sebagai 5, jadi rentetan bermula dari kedudukan ke-5 rentetan utama dikembalikan.

Kes 2

Jika indeks yang diberikan adalah negatif, kedua-dua kaedah ini akan memberikan output yang berbeza seperti yang ditunjukkan di bawah.

greeting.slice (-7)  // 'Morning'
greeting.substring (-7)  // 'Good Morning'
Salin selepas log masuk

Dalam kaedah slice, apabila indeks negatif diberikan, ia dikira dari hujung rentetan dan mengembalikan rentetan bermula dari kedudukan indeks tersebut. Dalam subrentetan, sebarang nombor negatif dianggap sebagai sifar. Jadi ia bermula pada indeks 0 dan mengembalikan keseluruhan rentetan.

Kes 3

Kedua-dua kaedah mengembalikan rentetan kosong apabila melepasi panjang rentetan.

greeting.slice (12)  // ''
greeting.substring (12)  // ''
Salin selepas log masuk

Kes 4

Indeks permulaan lebih besar daripada indeks akhir

greeting.slice (9, 5)  // ''
greeting.substring (9, 5)  // 'Morn'
Salin selepas log masuk

Kaedah slice mengembalikan rentetan kosong manakala kaedah subrentetan menukar indeks ini dan mengembalikan rentetan. Indeks penamat tidak disertakan.

Kes 5

Apabila kedua-dua indeks permulaan dan akhir adalah negatif

greeting.slice (-12, -8)  // 'Good'
greeting.substring (-12, -8)  // ''
Salin selepas log masuk

Kaedah potong mengira dari hujung rentetan ke indeks yang ditentukan dan mengembalikannya. Oleh kerana kedua-dua indeks adalah negatif dan kaedah subrentetan menganggapnya sebagai sifar, ia bermula pada sifar dan berakhir pada sifar. Oleh itu, rentetan kosong dikembalikan.

Kes 6

Apabila indeks permulaan negatif dan indeks akhir positif

greeting.slice (-3, 5)  // ''
greeting.substring (-3, 5)  // 'Good'
Salin selepas log masuk

Di sini, memandangkan indeks akhir muncul sebelum indeks permulaan, kaedah hirisan mengembalikan rentetan kosong. Tetapi kaedah subrentetan menganggap indeks negatif sebagai sifar dan bermula dari indeks 0 hingga indeks ke-5 tidak termasuk indeks tersebut. Oleh itu, ia mengembalikan "Baik".

Kes 7

Apabila indeks permulaan positif tetapi indeks akhir negatif

greeting.slice (5, -3)  // 'Morn'
greeting.substring (5, -3)  // 'Good'
Salin selepas log masuk

Kaedah slice mengembalikan "Morn" sebagai output dan kaedah Substring mengembalikan "Good". Kaedah Subrentetan menganggap indeks akhir sebagai sifar, dan memandangkan indeks permulaan (5) lebih besar daripada indeks akhir (0), ia hanya menukar kedudukannya (0,5) dan mengembalikan rentetan.

Kaedah menghiris dan substring

Jadual di bawah menyerlahkan perbezaan penting antara kaedah hirisan dan kaedah subrentetan -

Kaedah menghiris

Kaedah sub rentetan

Ia mengembalikan sebahagian daripada rentetan

Juga digunakan untuk mengeluarkan sebahagian daripada rentetan

Ia membenarkan pengindeksan negatif dan mengembalikan kiraan rentetan dari belakang

Jika indeks negatif diberikan, ia dianggap sebagai kedudukan indeks 0 (sifar).

Jika indeks permulaan lebih besar daripada indeks penamat, kembalikan rentetan kosong

Jika indeks mula lebih besar daripada indeks akhir, ia hanya menukar kedudukan mereka dan mengembalikan rentetan berdasarkan hasil tersebut

Kesimpulan

Kaedah string.slice dan string.substring digunakan untuk operasi rentetan. Bergantung pada parameter dan situasi tertentu, semuanya adalah serupa. Perbezaan utama pertama antara mereka ialah indeks mereka adalah negatif, seperti yang ditunjukkan dalam contoh di atas. Yang kedua ialah apabila indeks permulaan lebih besar daripada indeks akhir.

Atas ialah kandungan terperinci Perbezaan antara kaedah penghirisan rentetan dan subrentetan. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

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

Alat AI Hot

Undresser.AI Undress

Undresser.AI Undress

Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover

AI Clothes Remover

Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool

Undress AI Tool

Gambar buka pakaian secara percuma

Clothoff.io

Clothoff.io

Penyingkiran pakaian AI

Video Face Swap

Video Face Swap

Tukar muka dalam mana-mana video dengan mudah menggunakan alat tukar muka AI percuma kami!

Alat panas

Notepad++7.3.1

Notepad++7.3.1

Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina

SublimeText3 versi Cina

Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1

Hantar Studio 13.0.1

Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6

Dreamweaver CS6

Alat pembangunan web visual

SublimeText3 versi Mac

SublimeText3 versi Mac

Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Apa yang perlu saya lakukan jika saya menghadapi percetakan kod yang dihiasi untuk resit kertas terma depan? Apa yang perlu saya lakukan jika saya menghadapi percetakan kod yang dihiasi untuk resit kertas terma depan? Apr 04, 2025 pm 02:42 PM

Soalan dan penyelesaian yang sering ditanya untuk percetakan tiket kertas terma depan dalam pembangunan front-end, percetakan tiket adalah keperluan umum. Walau bagaimanapun, banyak pemaju sedang melaksanakan ...

Siapa yang dibayar lebih banyak Python atau JavaScript? Siapa yang dibayar lebih banyak Python atau JavaScript? Apr 04, 2025 am 12:09 AM

Tidak ada gaji mutlak untuk pemaju Python dan JavaScript, bergantung kepada kemahiran dan keperluan industri. 1. Python boleh dibayar lebih banyak dalam sains data dan pembelajaran mesin. 2. JavaScript mempunyai permintaan yang besar dalam perkembangan depan dan stack penuh, dan gajinya juga cukup besar. 3. Faktor mempengaruhi termasuk pengalaman, lokasi geografi, saiz syarikat dan kemahiran khusus.

Demystifying JavaScript: Apa yang berlaku dan mengapa penting Demystifying JavaScript: Apa yang berlaku dan mengapa penting Apr 09, 2025 am 12:07 AM

JavaScript adalah asas kepada pembangunan web moden, dan fungsi utamanya termasuk pengaturcaraan yang didorong oleh peristiwa, penjanaan kandungan dinamik dan pengaturcaraan tak segerak. 1) Pengaturcaraan yang didorong oleh peristiwa membolehkan laman web berubah secara dinamik mengikut operasi pengguna. 2) Penjanaan kandungan dinamik membolehkan kandungan halaman diselaraskan mengikut syarat. 3) Pengaturcaraan Asynchronous memastikan bahawa antara muka pengguna tidak disekat. JavaScript digunakan secara meluas dalam interaksi web, aplikasi satu halaman dan pembangunan sisi pelayan, sangat meningkatkan fleksibiliti pengalaman pengguna dan pembangunan silang platform.

Bagaimana untuk menggabungkan elemen array dengan ID yang sama ke dalam satu objek menggunakan JavaScript? Bagaimana untuk menggabungkan elemen array dengan ID yang sama ke dalam satu objek menggunakan JavaScript? Apr 04, 2025 pm 05:09 PM

Bagaimana cara menggabungkan elemen array dengan ID yang sama ke dalam satu objek dalam JavaScript? Semasa memproses data, kita sering menghadapi keperluan untuk mempunyai id yang sama ...

Bagaimana untuk mencapai kesan menatal paralaks dan kesan animasi elemen, seperti laman web rasmi Shiseido?
atau:
Bagaimanakah kita dapat mencapai kesan animasi yang disertai dengan menatal halaman seperti laman web rasmi Shiseido? Bagaimana untuk mencapai kesan menatal paralaks dan kesan animasi elemen, seperti laman web rasmi Shiseido? atau: Bagaimanakah kita dapat mencapai kesan animasi yang disertai dengan menatal halaman seperti laman web rasmi Shiseido? Apr 04, 2025 pm 05:36 PM

Perbincangan mengenai realisasi kesan animasi tatal dan elemen Parallax dalam artikel ini akan meneroka bagaimana untuk mencapai yang serupa dengan laman web rasmi Shiseido (https://www.shiseido.co.jp/sb/wonderland/) ... ...

Adakah JavaScript sukar belajar? Adakah JavaScript sukar belajar? Apr 03, 2025 am 12:20 AM

Pembelajaran JavaScript tidak sukar, tetapi ia mencabar. 1) Memahami konsep asas seperti pembolehubah, jenis data, fungsi, dan sebagainya. 2) Pengaturcaraan asynchronous tuan dan melaksanakannya melalui gelung acara. 3) Gunakan operasi DOM dan berjanji untuk mengendalikan permintaan tak segerak. 4) Elakkan kesilapan biasa dan gunakan teknik debugging. 5) Mengoptimumkan prestasi dan mengikuti amalan terbaik.

Perbezaan dalam Konsol.Log Output Result: Mengapa kedua -dua panggilan berbeza? Perbezaan dalam Konsol.Log Output Result: Mengapa kedua -dua panggilan berbeza? Apr 04, 2025 pm 05:12 PM

Perbincangan mendalam mengenai punca-punca utama perbezaan dalam output konsol.log. Artikel ini akan menganalisis perbezaan hasil output fungsi Console.log dalam sekeping kod dan menerangkan sebab -sebab di belakangnya. � ...

Bagaimana untuk melaksanakan fungsi seretan panel dan drop pelarasan yang serupa dengan vscode dalam pembangunan front-end? Bagaimana untuk melaksanakan fungsi seretan panel dan drop pelarasan yang serupa dengan vscode dalam pembangunan front-end? Apr 04, 2025 pm 02:06 PM

Terokai pelaksanaan fungsi seretan panel dan drop panel seperti VSCode di bahagian depan. Dalam pembangunan front-end, bagaimana untuk melaksanakan vscode seperti ...

See all articles