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(' ');
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';
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; });
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; });
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';
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';
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!