24 Jul 2019
Temel Lodash Komutları ve Açıklamaları
  • 538 Okuma
  • 0 Yorum
  • 16 Beğeni

Temel Lodash Komutları ve Açıklamaları

Javascript dili Web Programcılığında kullanılan bir dildir. Öncelerinde sadece kullanıcı tarafında çalışan bir dil olan javascript, artık sunucu tarafında da çalışmaktadır ve bu şekilde daha verimli çalışan uygulamalar geliştirilebilmektedir. Javascript'in daha kolay ve kullanışlı olmasına sağlayan birçok kütüphane bulunmaktadır. Bu makalemde Lodash kütüphanesinin bir web sitesi geliştirirken ihtiyaç duyabileceğiz bazı temel fonksiyonlarını size anlatmaya çalışacağım.


Burada vereceğim fonksiyonları javascript ile kendiniz de yazabilirsiniz. Bu noktada neden böyle bir kütüphane kullanayım ki diye düşenebilirsiniz. Eğer uygulamanız küçük ölçekli bir uygulama ise böyle bir kütüphaneye kullanmanıza gerek olmayabilir, ama büyük ölçekli uygulamalarınızda böyle bir kütüphane kullanmanızı şiddetle öneririm. Çünkü,

- İşinize yarayacak birçok fonksiyonu barındırıyor,

- Kendiniz kod yazmazsınız ve zamandan tasarruf edersiniz,

- Yazdığınız fonksiyonların zamanla karmaşık hale gelebilir ve projeye sonradan dahil olan kişilerin proje adaptasyonu zorlaşır.


Ne gibi durumlarda böyle bir kütüphane kullanılır ve neden kullanmalıyım sorularına yanıt aradıktan sonra komutlara geçebiliriz.

_.concat


Bu fonksiyon ile bir dizi ile başka bir dizi ya da değeleri birleştirebilirsiniz. Örnek kullanım,

var array = [1];
var other = _.concat(array, 2, [3], [[4]]);
 
console.log(other);
// => [1, 2, 3, [4]]
 
console.log(array);
// => [1]


_.difference


Verilen iki diziden, 1. dizide olupta 2. dizide olmayan elamanlardan yeni bir dizi oluşturmaya yarar. Kısacası iki dizi arasındaki farkı bulur. Örnek kullanım,

_.difference([2, 1], [2, 3]);
// => [1]


_.find


Bir collection içerisindeki şartlara uyan ilk elamanı döndürür. Eşleşme sağlanınca fonksiyon çalışmaya devam etmez. Örnek kullanım,

var users = [
  { 'user''barney',  'age'36, 'active': true },
  { 'user''fred',    'age'40, 'active': false },
  { 'user''pebbles', 'age'1,  'active': true }
];
 
_.find(users, function(o) { return o.age < 40; });
// => object for 'barney'
 
// The `_.matches` iteratee shorthand.
_.find(users, { 'age'1, 'active': true });
// => object for 'pebbles'
 
// The `_.matchesProperty` iteratee shorthand.
_.find(users, ['active', false]);
// => object for 'fred'
 
// The `_.property` iteratee shorthand.
_.find(users, 'active');
// => object for 'barney'


_.findIndex


Find fonksiyonundan farklı olarak eşleşen ilk elemanın index değerini döndürür. Örnek kullanım,

var users = [
  { 'user''barney',  'active': false },
  { 'user''fred',    'active': false },
  { 'user''pebbles', 'active': true }
];
 
_.findIndex(users, function(o) { return o.user == 'barney'; });
// => 0
 
// The `_.matches` iteratee shorthand.
_.findIndex(users, { 'user''fred', 'active': false });
// => 1
 
// The `_.matchesProperty` iteratee shorthand.
_.findIndex(users, ['active', false]);
// => 0
 
// The `_.property` iteratee shorthand.
_.findIndex(users, 'active');
// => 2


_.findLastIndex


Find fonksiyonundan farklı olarak, eşleşen son elemanın index değerini döndürür. Bu fonksiyonu firstIndex fonksiyonun tersi gibi düşebilirsiniz. Örnek kullanım,

var users = [
  { 'user''barney',  'active': true },
  { 'user''fred',    'active': false },
  { 'user''pebbles', 'active': false }
];
 
_.findLastIndex(users, function(o) { return o.user == 'pebbles'; });
// => 2
 
// The `_.matches` iteratee shorthand.
_.findLastIndex(users, { 'user''barney', 'active': true });
// => 0
 
// The `_.matchesProperty` iteratee shorthand.
_.findLastIndex(users, ['active', false]);
// => 2
 
// The `_.property` iteratee shorthand.
_.findLastIndex(users, 'active');
// => 0


_.head


Biz dizideki ilk elamanı alır. Örnek kullanım,

_.head([1, 2, 3]);
// => 1
 
_.head([]);
// => undefined


_.last

Bir dizideki son elemanı alır. Örnek kullanım,

_.last([1, 2, 3]);
// => 3


_.flatten


Dizi içinde bulunan diziyi, mevcut diziye eklenmesini sağlar. Bu şekilde daha basit biz dizi elde edersiniz. Örnek kullanım,

_.flatten([1, [2, [3, [4]], 5]]);
// => [1, 2, [3, [4]], 5]


_.reverse


Dizi elemanlarını tersine çevirir. Bu şekilde dizinin ilk elamanı son elemanı haline gelir. Örnek kullanım,

var array = [1, 2, 3];
 
_.reverse(array);
// => [3, 2, 1]
 
console.log(array);
// => [3, 2, 1]


_.uniq


Dizi içerinde tekrar eden elemanların bir defa alınmasında kullanılır. Örnek kullanım,

_.uniq([2, 1, 2]);
// => [2, 1]


_.filter


Bir collection içerinde belirli bir şarta göre filtreleme işleminin yapılmasında ve bu şekilde eşleşen elemanlarla yeni bir dizi oluşturulmasında kullanılır. Örnek kullanım,

var users = [
  { 'user''barney', 'age'36, 'active': true },
  { 'user''fred',   'age'40, 'active': false }
];
 
_.filter(users, function(o) { return !o.active; });
// => objects for ['fred']
 
// The `_.matches` iteratee shorthand.
_.filter(users, { 'age'36, 'active': true });
// => objects for ['barney']
 
// The `_.matchesProperty` iteratee shorthand.
_.filter(users, ['active', false]);
// => objects for ['fred']
 
// The `_.property` iteratee shorthand.
_.filter(users, 'active');
// => objects for ['barney']


_.map


Bir collection içerisinde her bir elaman üzerinde işlem yapmak için kullanılır. Filter fonskiyonundan farklı olarak yeni bir dizi dönmek yerine mevcut dizi üzerinde işlem yapılır. Örneğin bir dizinin her bir elamının değerini 1 arttırmak istiyorsak bunun için map fonksiyonunu kullanabiliriz. Örnek kullanım,

function square(n) {
  return n * n;
}
 
_.map([4, 8], square);
// => [16, 64]
 
_.map({ 'a'4, 'b'8 }, square);
// => [16, 64] (iteration order is not guaranteed)
 
var users = [
  { 'user''barney' },
  { 'user''fred' }
];
 
// The `_.property` iteratee shorthand.
_.map(users, 'user');
// => ['barney', 'fred']


_.lowerCase


Verilen değeri küçük harfli hale getirir. Örnek kullanım,

_.lowerCase('--Foo-Bar--');
// => 'foo bar'
 
_.lowerCase('fooBar');
// => 'foo bar'
 
_.lowerCase('__FOO_BAR__');
// => 'foo bar'


_.upperCase


Verilen değeri büyük harfli hale getirir. Örnek kullanım,

_.upperCase('--foo-bar');
// => 'FOO BAR'
 
_.upperCase('fooBar');
// => 'FOO BAR'
 
_.upperCase('__foo_bar__');
// => 'FOO BAR'


Sonuç


Bu makalemde bir Javascript kütüphanesi olan ve içinde birçok fonksiyonu bulunduran Lodash kütüphanesinin bazı fonksiyonlarını ve kullanım örneklerini paylaştım. Lodash kütüphanesinin oldukça fazla sayıda fonksiyonu olduğundan ve makaleyi daha fazla uzun ve sıkıcı hale getirmemek için burada sadece bir kısmını paylaştım. İlerleyen makalelerde farklı fonksiyonları ve FP örneklerini paylaşacağım.


Umarım faydalı olur.

İyi çalışmalar.


Makaleyi faydalı buldunuz mu ?

Yazar


Legend Engineer

Legend Engineer

Mühendis (Bilgisayar)

Bilgisayar Mühendisliği mezunuyum. Bilgisayar alanında edindiğim bilgileri bu blog üzerinde paylaşıyorum. Beni takipte kalın.

Yorumlar


İlk yorum yapan sen ol

İlginizi Çekebilir

Makale Hakkındaki Düşünçelerinizi Paylaşın