Искористите предности ТипеСцрипт-ових типова услужних програма и можете имати користи од изражајнијег кода који је такође робуснији.

ТипеСцрипт је надскуп ЈаваСцрипт-а који вам омогућава да додате статичко куцање у базу кода. Са својим моћним системом типова, ТипеСцрипт нуди побољшану читљивост кода и могућност хватања грешака током времена компајлирања.

Један од најкориснијих аспеката ТипеСцрипт-а су његови уграђени типови услужних програма, који могу поједноставити ваше напоре кодирања и уштедети драгоцено време за развој. Погледајте ове типове услужних програма ТипеСцрипт које морате знати који вам могу помоћи да са лакоћом пишете код безбедан тип.

ТипеСцрипт'с Тип делимичне помоћи вам омогућава да било које особине објекта учините опционим. Омогућава вам да креирате објекте са одређеним својствима која можда недостају или су недефинисана. Узмимо на пример:

интерфејс Корисник { 
име: низ;
старост: број;
емаил: низ;
}

Помоћу Делимични тип корисности, можете креирати нови тип са свим својствима корисничког интерфејса постављеним као опционо:

instagram viewer
тип Опциони корисник = Делимичан

Сада можете да креирате инстанцу типа ОптионалУсер са само неким дефинисаним својствима:

конст корисник: ОптионалУсер = { име: "Јован" };

Можете наићи на ситуације у којима морате да креирате објекат са одређеним опционим својствима. Ово може добро доћи посебно при грађењу форми који имају више поља, јер нису сва потребна и у таквим случајевима делимична корисност може бити од виталног значаја.

Тип помоћног програма Пицк ТипеСцрипт-а може вам помоћи да генеришете нови тип тако што ћете изабрати само подскуп својстава из постојећег типа. То је згодно када требате да сузите већи објекат на само неколико потребних својстава или ако желите да примените строго куцање на својствима која су вам потребна.

интерфејс Корисник { 
локација: низ;
старост: број;
емаил: низ;
}

тип ПерсонВитхоутЕмаил = Изаберите'локација' | 'старост'>;

конст особа: ПерсонВитхоутЕмаил = {
локација: 'САД',
старост: 30
};

У овом примеру, интерфејс под називом „Корисник“ дефинише три својства: е-пошту, старост и локацију.

Коришћењем Изаберите врсту услужног програма, можете селективно издвојити својства „локација“ и „старост“ из корисничког интерфејса, што резултира креирањем новог типа под називом „ПерсонВитхоутЕмаил“.

Затим можете да креирате нову инстанцу типа „ПерсонВитхоутЕмаил“ и доделите вредности само својствима „локација“ и „старост“. Пошто је својство "е-пошта" изостављено из овог типа, не можете га доделити објекту.

Са типом услужног програма Пицк, можете направити нови тип који само укључује својства која желите. Ово може помоћи да ваш код буде читљивији и лакши за рад.

Тип само за читање означава да су атрибути објекта непроменљиви након његовог креирања. Овај тип гарантује конзистентност података објекта на дужи рок, што резултира глаткијим и сигурнијим руковањем кодом.

интерфејс Корисник {
име само за читање: низ;
узраст само за читање: број;
е-пошта само за читање: низ;
}

Помоћу Тип услужног програма само за читање, можете креирати нови тип са свим својствима корисничког интерфејса означеним као само за читање:

тип РеадонлиУсер = Само за читање

Можете да наведете вредности својстава када креирате РеадонлиУсер инстанцу::

конст корисник: РеадонлиУсер = { 
име: "Јован",
старост: 30,
емаил: "јохн@екампле.цом"
};

Када означите својства објекта као само за читање, покушај измене вредности тих својстава постаје немогућ:

усер.наме = "Јане";
// Грешка: Не може се доделити 'наме' јер је то својство само за читање.

Тип само за читање је посебно важан у ситуацијама када желите да се уверите да се одређени објекат не мења, без обзира на то како је референциран. На пример, ако имате објекат који садржи важна подешавања конфигурације, желели бисте да се уверите да остаје непромењен.

Овај тип осигурава да су сва битна својства објекта присутна, док тип Партиал нуди већу флексибилност тако што вам омогућава да одредите подскуп својстава док остављате остале опционо. Ово се може показати корисним у ситуацијама када нека својства можда нису неопходна или су подложна промени.

интерфејс Корисник {
име: низ;
локација: број;
адреса: низ;
}

Коришћењем Потребна врста услужног програма, могуће је креирати нови тип који комбинује све атрибуте корисничког интерфејса док захтева да свако од ових својстава мора бити присутно. Креирање инстанце РекуиредУсер могуће је само када су сва њена својства правилно подешена.

конст корисник: РекуиредУсер = { 
име: "Н.Н. лице",
локација: "САД",
адреса: "Кансас 9745-0622"
};

Коришћење типа Рекуиред утилити осигурава да су сва потребна својства присутна унутар објекта.

Тип услужног програма Изостављање вам омогућава да креирате нови тип тако што ћете искључити одређена својства из постојећег типа.

интерфејс Особа {
локација: низ;
старост: број;
емаил: низ;
}

тип ПерсонВитхоутЕмаил = Изоставити'е-пошта'>;
конст особа: ПерсонВитхоутЕмаил = { локација: "САД"; старост: 30 };

Интерфејс особе има три својства: старост, локацију и е-пошту. Тип ПерсонВитхоутЕмаил користи тип помоћног програма Омит да укључи сва својства објекта Персон, осим е-поште. Затим можете да креирате инстанцу овог новог типа, без навођења вредности за својство е-поште.

Требало би да имате на уму да тип услужног програма Омит дели значајне сличности са типом услужног програма Пицк, јер вам омогућава да осмислите нови тип користећи само својства која наведете.

Можете користити тип помоћног програма Рецорд да дефинишете тип објекта за који кључеви и вредности имају одређени тип. Његова дефиниција је:

тип Записпротеже кеиоф било који, Т> = { [П ин К]: Т;};

Ово повезује тип Т са вредношћу сваког кључа, док је К унија кључева било ког типа. Резултујући објекат има свој тип својства П постављен на Т.

Размотрите сценарио типа објекта са стринг кључевима и нумеричким вредностима. У том случају можете применити Тип услужног програма за снимање као што:

тип МиРецорд = Рецорд<низ, број>;

конст миОбјецт: МиРецорд = {
"фоо": 1,
"бар": 2,
"баз": 3,
}

Овај пример наводи МиРецорд као тип објекта са стринг кључевима и нумеричким вредностима. Објекат миОбјецт представља пример овог типа, са кључевима „фоо“, „бар“ и „баз“ додељеним њиховим одговарајућим вредностима.

Овај чланак је открио чисту моћ типова услужних програма ТипеСцрипт – они могу бити драгоцена предност када је у питању поједностављење вашег кода и бржи и ефикаснији развој. Ови типови услужних програма и ТипеСцрипт уопште, могу учинити чуда да осигурају да ваш код увек буде без грешака и да се придржава одређених структура.