Hari / Hari Kod: Memanfaatkan Kuasa Lelaran JavaScript

王林
Lepaskan: 2024-09-08 20:36:09
asal
1014 orang telah melayarinya

Day /  Days of Code: Harnessing JavaScript’s Iterative Power

Jum, 6 September 2024

Hello semua! ?

Dalam paparan kehebatan JavaScript, projek penyemak tatabahasa hari ini menggunakan kaedah berulang seperti .forEach(), .map(), dan .filter() untuk memudahkan transformasi dan traversal tatasusunan, mempamerkan kekuatan dan keanggunan Kuasa lelaran JavaScript.

Pertama, kami diberikan cerpen sebagai rentetan; Kemudian, cerita itu dibahagikan kepada susunan perkataan yang dipisahkan oleh ruang:

let story = 'Last weekend, I took literally the most beautifull bike ride of my life. The route is called "The 9W to Nyack" and it stretches all the way from Riverside Park in Manhattan to South Nyack, New Jersey. It\'s really an adventure from beginning to end! It is a 48 mile loop and it literally took me an entire day. It was a short stop, though, because I had a freaking long way to go. After a quick photo op at the very popular Little Red Lighthouse I began my trek across the George Washington Bridge into New Jersey. The GW is a breathtaking 4,760 feet long!.[edited for brevity]';

let storyWords = story.split(' ');
Salin selepas log masuk

Seterusnya, ialah semakan ejaan dan tatabahasa. Contoh-contoh ini ialah perkataan tunggal, walaupun ini boleh dilanjutkan dengan .map() salah ejaan dan pola bahasa yang biasa:

let unnecessaryWord = 'literally';
let misspelledWord = 'beautifull';
let badWord = 'freaking';
Salin selepas log masuk

Untuk mengemas kini cerita, kami menggunakan kaedah iterator yang telah kami pelajari, termasuk .filter(), .map(), .findIndex(), dan .every(). Seterusnya, kami mengalih keluar perkataan yang tidak perlu 'secara literal' menggunakan .filter() dengan fungsi anak panah--seperti biasa selepas ES6. Ambil perhatian bahawa storyWords diubah suai di tempatnya:

storyWords = storyWords.filter(word => {
  return word !== unnecessaryWord;
});
Salin selepas log masuk

Seterusnya, pembetulan ejaan digunakan melalui fungsi .map(), dengan menyatakan bahawa .map() boleh digunakan secara lebih komprehensif dengan pasangan salah ejaan dan pembetulan biasa:

storyWords = storyWords.map( word => {
  return word === 'beautifull' ? 'beautiful' : word;
});
Salin selepas log masuk

Dalam senario yang diberikan, nenek seseorang dijangka membaca petikan, jadi perkataan 'buruk' 'freaking' diganti menggunakan .findIndex() dan pengindeksan langsung.

let badWordIndex = storyWords.findIndex(word => word === badWord);
storyWords[badWordIndex] = 'really';
Salin selepas log masuk

Akhir sekali, semakan dilakukan dengan mengambil kira kemudahan membaca, seperti yang mungkin anda lihat dalam skor bacaan Flesch berdasarkan purata panjang perkataan; Di sini kita diberi bahawa terdapat satu perkataan lebih daripada 10 aksara panjangnya dan akan digantikan dengan 'gemilang', menggunakan .forEach() untuk mencari indeks, diikuti dengan penggantian langsung:

let index = 0;
storyWords.forEach(word, i) => {
  if (word.length > 10) index = i;
});
storyWords[index] = 'glorious';
Salin selepas log masuk

Kod yang bersih dan boleh dibaca adalah penting bukan sahaja kerana ia menjadikan kod lebih mudah difahami dan diselenggara, tetapi ia juga mengurangkan kemungkinan ralat. Ini amat penting dalam persekitaran kolaboratif di mana berbilang pembangun bekerja pada pangkalan kod yang sama. Kaedah berulang seperti .forEach(), .map(), dan .filter() lebih disukai berbanding gelung tradisional kerana ia menawarkan pendekatan yang lebih deklaratif kepada pengekodan. Ini bermakna anda boleh menyatakan perkara yang ingin anda capai tanpa memperincikan aliran kawalan, membawa kepada kod yang lebih ringkas, lebih mudah dibaca dan kurang terdedah kepada ralat.

Selamat pengekodan! ?

Atas ialah kandungan terperinci Hari / Hari Kod: Memanfaatkan Kuasa Lelaran JavaScript. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:dev.to
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
Tutorial Popular
Lagi>
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!