Functions

TypeScript-dagi Functions

TypeScript Funktsiyalar

TypeScript funktsiya parametrlari va qaytariladigan qiymatlar uchun maxsus yozuv sintaksisiga ega.

Funktsiyalar haqida ko'proq ma'lumotni bu yerdan o'qing.

Qaytish Turi

Funktsiya qaytaradigan qiymat turi aniq belgilanishi mumkin.

Misol:

// bu yerda `: number` bu funktsiya raqam qaytarishini belgilaydi
function getTime(): number {
  return new Date().getTime();
}

Agar qaytish turi belgilanmagan bo'lsa, TypeScript qaytariladigan o'zgaruvchilar yoki ifodalar turlarini tahlil qilib, turini aniqlashga harakat qiladi.

Void Qaytish Turi

void turi funktsiya hech qanday qiymat qaytarmasligini ko'rsatish uchun ishlatiladi.

Misol:

function printHello(): void {
  console.log('Salom!');
}

Parametrlar

Funktsiya parametrlari o'zgaruvchilarni belgilash kabi sintaksis bilan yoziladi.

Misol:

function multiply(a: number, b: number) {
  return a * b;
}

Agar parametr turi belgilanmagan bo'lsa, TypeScript odatda any turini ishlatadi, agar boshqa turdagi ma'lumotlar mavjud bo'lmasa.

Ixtiyoriy Parametrlar

TypeScript odatda barcha parametrlarni majburiy deb qabul qiladi, lekin ular aniq ixtiyoriy qilib belgilanishi mumkin.

Misol:

// bu yerda `?` operatori `c` parametrini ixtiyoriy qilib belgilaydi
function add(a: number, b: number, c?: number) {
  return a + b + (c || 0);
}

Default Parametrlar

Sukut bo'yicha qiymatga ega bo'lgan parametrlar uchun, default qiymat tur aniqlanishidan keyin keladi:

Misol:

function pow(value: number, exponent: number = 10) {
  return value ** exponent;
}

TypeScript default qiymatga ega bo'lgan parametrlarni turini aniqlashi mumkin.

Nomlangan Parametrlar

Nomlangan parametrlarga tur belgilash normal parametrlarni belgilash kabi amalga oshiriladi.

Misol:

function divide({ dividend, divisor }: { dividend: number; divisor: number }) {
  return dividend / divisor;
}

Qolgan Parametrlar (Rest Parameters)

Qolgan parametrlar odatiy parametrlar kabi tiplanadi, lekin ular har doim massiv bo'lgani uchun, turi ham massiv bo'lishi kerak.

Misol:

function add(a: number, b: number, ...rest: number[]) {
  return a + b + rest.reduce((p, c) => p + c, 0);
}

Tur Aliaslari

Funktsiya turlarini tur aliaslari yordamida funktsiyalardan alohida belgilash mumkin.

Bu turlar o'q funktsiyalariga o'xshab yoziladi, o'q funktsiyalari haqida ko'proq bu yerdan o'qing.

Misol:

type Negate = (value: number) => number;
 
// bu funktsiyada `value` parametri avtomatik ravishda `Negate` turidan `number` turiga o'zlashtiriladi
const negateFunction: Negate = (value) => value * -1;

Ushbu sahifada

GitHubda tahrirlash