Bir geliştiricinin sadece görevleri tamamlaması değil, aynı zamanda görevleri daha verimli bir şekilde yapması da gereklidir. Bugün JavaScript'te değişkenlerle çalışmayı geliştiriciler için kolaylaştıran birkaç kitaplık bulunmaktadır. Bu eğitimde Lodash kitaplığının en yaygın işlevlerini nasıl kullanacağımızı öğreneceğiz.
Henüz Lodash'ı denemediyseniz, şimdi tam zamanı. Lodash, diziler, tamsayılar, nesneler, metinler ve diğer veri türleri ile çalışmayı kolaylaştıran çağdaş bir JavaScript yardımcı program paketidir.
Çeşitli nesnelerle uğraşmanıza yardımcı olacak ve genel yöntemleri kodlama ihtiyacını ortadan kaldırarak size zaman kazandıracaktır. Kodunuz daha az satırla daha temiz olacak ve tüm tarayıcılarda çalışacak. Henüz kullanmıyorsanız, dikkatlice düşünmelisiniz.
Lodash'ı benimsememek, JavaScript kod tabanlarımız için büyük bir kayıptır. İş yerinde karşılaştığımız genel zorluklara hatasız ve zarif bir çözümdür ve onu kullanmak yalnızca kodumuzu daha okunabilir ve yönetilebilir hale getirecektir.
Daha popüler (ya da değil!) Lodash işlevlerinden bazılarını inceleyelim ve bu kitaplığın ne kadar yararlı ve güzel olduğunu keşfedelim.
1. _.sortedUniq
Yinelenen tüm değerler bununla döndürülmez. Yalnızca sıralanmış diziler için olduğundan, bu esas olarak hız nedenleriyle kullanılır. Bu, yalnızca büyük bir diziyle uğraşıyorsanız kullanışlıdır. Hızı artırmak istiyorsanız, dizinizi sıralayın ve sıralanmış dizilerle daha iyi çalışan yöntemleri kullanın.
Lodash'ın buna benzer bir dizi başka işlevi vardır. .sortedIndex, .sortedIndexBy, .sortedIndexOf, .sortedLastIndex, .sortedLastIndexBy, .sortedLastIndexOf, .sortedUniq, .sortedUniqBy, .qortedUniqUni.qsorted.
2. _.azalt
_.reduce, bir filtre işlevine benzer. Tek fark, döndürülen nesnenin formunu seçme seçeneğine sahip olmanızdır. Ne dediğimi anlamadıysan normal; bunun bir örneği var.
Özünde, yaşa göre sınıflandırılmış kullanıcıları içeren yeni bir nesne döndürürüz, ancak yalnızca 18 ila 59 yaşları arasındakiler içindir. Bu Lodash yardımcı işlevi en sık kullanılanlardan biridir. Ayrıca ES6'ya dahildir. Ayrıca iki tipik hataya da dikkat çekmek isterim: işlevin sonunda sonucu döndürmeyi unutmayın ve sonucun varsayılan değerini üçüncü parametre olarak (burada) sağlayın.
3. _.get ve ._set
Bunun için, hemen hemen aynı işlevi gören iki işlevi göstererek sizi biraz kandıracağım. _.get bir nesneden bir özellik değeri döndürür ve _.set, onu tahmin ettiniz, değeri olan bir özellik ayarlayın. Bir mülke yolundan erişebilmeniz dışında benzersiz bir şey yoktur.
Bir örneğe bakalım.
_.set çağrılırken yol mevcut değilse, oluşturulur. Artık “tanımsız 'öğeler' ayarlanamıyor” hatası olmayacak. Yol yoksa, _.get bir hata yerine tanımsız döndürür. Yol tanımsız olarak çözülürse, varsayılan bir değer de sağlayabilirsiniz (üçüncü parametre).
4. _.bul
Tek bir nesneyi bulmak için bir dizide dolaşmak yerine _.find kullanabiliriz. Bu iyi, ancak _.find'in yapabileceği tek şey bu değil. Tek bir kod satırıyla, birçok özelliği kullanarak bir nesneyi de keşfedebilirsiniz. Buna bir bak!
5. _.keyBy
Favorilerimden biri _.keyBy. Belirli bir niteliğe sahip bir nesne elde etmeye çalışırken oldukça kullanışlıdır. 100 blog girişimiz olduğunu ve "34abc" kimliğine sahip olanı almak istediğimizi varsayalım. Nasıl yapacağız? Bakalım neler olacak! Bu yöntem, bir sunucu onu bir dizi olarak sağlıyorsa, bir nesne koleksiyonu düzenlemenize yardımcı olabilir. Bir işlev, ikinci argüman olarak da kullanılabilir.
6. _.her biri için
Bu yöntem, bir dizi nesne üzerinde tek tek yinelenerek, istediğiniz mantığı yapmanıza olanak tanır. Bu ilk örnekte, fullName adında yeni bir özellik oluşturmak için adlarını ve soyadlarını birleştirerek, kullanıcı nesnelerinin bir listesinin üzerinden geçeceğim.
forEach bu iki parametreyi kabul eder. Döngü yaptığımız dizi ilk parametredir. İkinci argüman bir yineleme işlevidir, birinci parametre tekil öğe referansı ve ikincisi yinelemenin geçerli dizinidir.
7. _.harita
Harita, forEach gibi, bir dizi değer boyunca yinelenir. Harita işlevi ise yineleme işlevi tarafından sağlanan yeni bir değer dizisini döndürür. Buradaki forEach örneğimizdekiyle aynı kullanıcı koleksiyonunu kullanıyoruz. Tüm kullanıcıların tam adlarının düzleştirilmiş bir dizisine sahip yeni bir değişken oluşturmak için _.map kullanabiliriz.
8. _.fark
Fark işlevi, birinci ve ikinci diziler arasında farklılık gösteren yeni bir değerler dizisi üretecektir. Argümanların yerlerinin sonuçları etkilediğine dikkat etmek çok önemlidir.
9. _.al
_.get() işlevi, bir nesne içindeki bir öğeyi bulmamıza yardımcı olabilir. Sağlanan yolda bir öğe bulunmazsa, _.get() işlevi için varsayılan bir değer ayarlayabiliriz. _.get() işlevi üç parametre alır; bunlardan ilki, kendisinden bir öğe elde etmek istediğimiz nesnedir. Yol ikincisidir. Üçüncü değer, bir eleman bulunamazsa döndürmek istediğimiz varsayılan değerdir.
10. _.bul
_find() işlevi, _.get() yöntemiyle aynı görünebilir. _.find() işlevi, _.get() yöntemi gibi, üç parametre kabul eder. Ancak, _.get() yönteminden farklı olarak, ilk argüman bir dizi veya bir nesne olabilir. İkinci argüman, her yinelemede çağrılacak işlevi belirtir. Üçüncü girdi, koleksiyonun başlangıç dizinidir. Çünkü _.find() işlevi bir koleksiyondaki her öğe üzerinde yinelenir.
11. _.grupTarafından
Her değeri aynı anahtara sahip bir dizi nesne olacak şekilde, bir işlevin sonucuyla (veya rastgele seçilen bir özellik adıyla) adlandırılmış bir nesne oluşturun.
12. _.ayar
_.set() yöntemi, _.get() yönteminin tersidir. Belirli bir yoldaki bir elemanın değerini değiştirir. Nesne veya dizi ilk parametre, yol ikinci parametre ve ayarlamak istediğiniz değer üçüncü parametredir.
13. _.birleştirme
Object.assign'e benzer şekilde çalışır, ancak daha derindeki nesneleri değiştirmek yerine güncellemek için temel yapının derinliklerine iner.
14. ._çapak
Bu oldukça basit bir örnek. Tüm "birleştirici aksan işaretleri" kaldırılmıştır. Böylece “é”, “e” olur. Uluslararasılaştırma ve yerelleştirme söz konusu olduğunda, arama işlevleri için metnin çapaklarını almak iyi bir uygulamadır.
15. _. geri sıçrama
Bu, en etkili Lodash stratejilerinden biridir. Ayrıca ne yaptığını ve ne zaman kullanmanız gerektiğini kavramak da zor olabilir. _.debounce() yöntemi bir işlev döndürür. _.debounce() yönteminin işlevi, işlevin son çağrılmasından bu yana belirtilen sayıda milisaniye geçene kadar çağrıyı geciktirir.
Sonuç
Lodash, JavaScript dilinin güçlü bir uzantısıdır. Asgari çabayla, özlü ve verimli kod oluşturulabilir. Lodash ayrıca tamamen modülerdir. Bazı işlevleri nihayetinde kullanımdan kaldırılabilse de, JS dilinin evrimini sürdürürken geliştiricilere sayısız fayda sağlayacağına inanıyorum.
Umarım bu birkaç Lodash özelliği, diziler, nesneler ve koleksiyonlarla çalışırken Lodash'ın ne kadar güçlü olabileceğini görmenize yardımcı olur. ziyaret edebilirsiniz belgeleme sunduğu diğer birçok seçeneği keşfetmek için.
Yorum bırak