Object / pipe function / currying
Tags: javascript, object, webdev
Published: 2024-06-14 14:32:22

**0bject**



Objectlar bu keys va value yani kalitlar va qiymatlarni o'z ichiga olgan ma'lumotlar to'plami.Ob'ektlar yordamida siz ko'p turdagi ma'lumotlarni bitta strukturada saqlashingiz mumkin.Ob'ektlar JavaScriptning asosiy tushunchalaridan biri bo'lib, ular ko'pincha dasturda turli ma'lumotlarni guruhlash va ularga murojaat qilish uchun ishlatiladi.

Ob'ekt literal usuli:

```
let car = {
    make: "Toyota",
    model: "Corolla",
    year: 2021,
    color:"black"
};

```
Ob'ektga Murojaat Qilish:
ikki xil usul bilan murojat qilish mumkin

1 Nuqta yirdamida:
Ob'ektning qiymatlariga ikki xil usul bilan murojaat qilishingiz mumkin:

```
console.log(car.make);  
console.log(car.model); 
```

2 Kvadrat qavs orqali:

```
console.log(car["make"]);  
console.log(car["model"]); 

```

Ob'ektga Yangi Xususiyat Qo'shish

```
car.color = "white";
console.log(car.color);

```

JavaScriptda ob'ektlar juda kuchli va ulardan foydalanish juda keng tarqalgan.Ular yordamida siz murakkab ma'lumot strukturalarini yaratishingiz va ulardan foydalanishingiz mumkin.Ob'ektlarni tushunish va ulardan to'g'ri foydalanish sizning JavaScript dasturlash mahoratingizni sezilarli darajada oshiradi.

**PIPE function**

JavaScriptda "pipe" funksiyasi funksional dasturlash paradigmasida keng qo'llaniladigan tushunchadir. U bir qator funksiyalarni ketma-ket chaqiradi, bunda har bir funksiya oldingi funksiyaning chiqishini keyingi funksiyaga kiritma sifatida oladi. Bu, xuddi bir nechta funksiyalarni birlashgan holda, bir xil quvurni (pipe) hosil qilishiga o'xshaydi.

**PIPE function quydagicha ko'rinishda**

```
// oddiy funksiyalar
const bir = x => x + 1;
const ikki = x => x * 2;
const uch = x => x - 3;

// Pipe yordamida ularni birlashtirish
const hisoblash = pipe(bir, ikki, uch);


const result = hisoblash(5);
console.log(result); // shu ko'rinishda amal bajariladi (5 + 1) * 2 - 3 = 9

```

Dastlab 5 qiymatiga bir funksiyasi qo'llanadi va 6 hosil bo'ladi.
Keyin 6 qiymati ikki funksiyasiga uzatiladi va 12 hosil bo'ladi.
Nihoyat, 12 qiymati uch funksiyasiga uzatiladi va 9 hosil bo'ladi.
pipe fuksiyasi yordamida siz ketma - ket amallarni bajarishingiz mumkin va qiyin ammalarni osongina bajara olasiz.

**Currying Function**

Currying - bu funksiyani argumentlarini qabul qiladigan ketma-ketlikka bo'lish jarayonidir, ya'ni bir nechta argumentlarni bir vaqtning o'zida qabul qilish o'rniga, u har bir argumentni alohida qabul qilib, har bir qadamda yangi funksiya qaytaradi. Bu jarayon natijasida oxirgi natija hosil bo'ladi.

currying funksiya:

```
function hisoblash(a) {
    return function(b) {
        return function(c) {
            return a * b * c;
        };
    };
}

const result = hisoblash(2)(3)(4); // shu holatda hsoblanadi 2 * 3 * 4 = 24
console.log(result); // natija 24


```

Bu misolda hisoblash funksiyasi uchta argumentni qabul qiluvchi currying funksiyasidir. Har bir argumentni alohida qabul qiladi va oxirgi natijani hisoblab qaytaradi.

Currying bu funksional dasturlashda keng qo'llaniladigan texnika bo'lib, u funksiyalarni qayta foydalanish va qisman qo'llash imkoniyatlarini beradi. Bu texnika JavaScriptda ko'p hollarda funksiyalarni soddalashtirish va ulardan foydali modullar yaratishda ishlatiladi.