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

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

Научите како да пооштрите свој код и да на најбољи начин искористите ове језике помоћу корисних пречица.

1. Тернарни оператер

Тернарни оператор нуди сажету и ефикасну синтаксу за изражавање условних изјава. Састоји се од три дела: услов, израз који се покреће ако је услов тачан и израз који се покреће ако је нетачан.

Овај оператор се показао посебно корисним када се доносе одлуке на основу услова и сходно томе додељују различите вредности.

Размотрите следећи пример:

конст старост = 20;
конст агеТипе = старост >= 18? "одрасли": "дете";
конзола.лог (агеТипе); // Излаз: "Одрасли"

Овај пример користи тернарни оператор да провери да ли је променљива старости је већи или једнак

18. Ако јесте, код додељује вредност Адулт на променљиву агеТипе, иначе додељује вредност "Дете".

2. Литерали шаблона

Литерали шаблона нуде моћан и ефикасан начин форматирање ЈаваСцрипт стрингова и уграђивање променљивих или израза у њих. За разлику од традиционалне конкатенације низова коришћењем једноструких или двоструких наводника, литерали шаблона користе позадинске ознаке (`).

Ова јединствена синтакса пружа неколико предности када радите са стринговима. Размотрите следећи пример који показује употребу литерала шаблона:

конст име = "Алице";
конст поздрав = `здраво, ${наме}!`;
конзола.лог (поздрав); // Излаз: "Здраво, Алиса!"

Пример укључује име променљива у литерал шаблона користећи ${}. Ово вам омогућава да лако конструишете динамичке стрингове.

3. Нуллисх коалесцинг оператор

Нуллисх коалесцент оператор (??) пружа згодан начин за додељивање подразумеваних вредности када је променљива или нула или недефинисан. Враћа операнд са десне стране ако је операнд са леве стране нула или недефинисан.

Размотрите следећи пример:

конст корисничко име = нула;
конст дисплаиНаме = корисничко име?? "гост";
конзола.лог (дисплаиНаме); // Излаз: "Гост"

У овом примеру, пошто променљива корисничко име је нула, нулти оператор спајања додељује подразумевану вредност Гост на променљиву Показати име.

4. Евалуација кратког споја

Процена кратког споја вам омогућава да пишете сажете условне изразе користећи логичке операторе као што су && и ||. Користи се од чињенице да ће логички оператор престати да процењује изразе чим може да одреди резултат.

Размотрите следећи пример:

конст име = "Јован";
конст поздрав = име && `здраво, ${наме}`;
конзола.лог (поздрав); // Излаз: "Здраво, Џоне"

Овај пример ће само проценити израз `Здраво, ${наме}` ако је променљива име има истиниту вредност. У супротном, долази до кратког споја и додељује вредност име себе на променљиву Поздрав.

5. Скраћеница доделе својстава објекта

Када креирате објекте, имате опцију да користите скраћени запис који додељује променљиве као својства са истим именом.

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

Размотрите следећи пример:

конст име = "Јован";
конст презиме = "Срна";
конст особа = {име, презиме};
конзола.лог (особа); // Излаз: { фирстНаме: "Јохн", презиме: "Дое" }

Овај пример додељује својства име и презиме користећи стенографску нотацију.

6. Опционо повезивање

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

Размотрите следећи пример:

конст корисник = { име: "Алице", адреса: { град: "Њу Јорк", земљи: "САД" }};
конст земља = корисник.адреса?.земља;
конзола.лог (земља); // Излаз: "САД"

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

7. Деструктурирање објеката

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

Овај приступ поједностављује процес приступа и манипулисања својствима објекта. Хајде да ближе погледамо како деструктурирање објеката функционише на примеру:

конст корисник = { име: "Јован", старости: 30 };
конст {име, старост } = корисник;
конзола.лог (име, старост); // Излаз: "Јован" 30

Овај пример издваја променљиве име и старости од корисник објекат путем деструктурирања објекта.

8. Спреад Оператор

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

Размотрите следећи пример:

конст бројеви = [1, 2, 3];
конст нови бројеви = [... бројеви, 4, 5];
конзола.лог (невНумберс); // Излаз: [1, 2, 3, 4, 5]

У горњем примеру, оператор ширења проширује бројевима низ у појединачне елементе, који се затим комбинују са 4 и 5 да направите нови низ, невНумберс.

9. Скраћеница петље објекта

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

Размотрите овај пример:

конст корисник = { име: "Јован", старости: 30 };

за (конст [кључ, вредност] офОбјекат.ентриес (корисник)) {
конзола.Пријава(`${кеи}: ${валуе}`);
}

// Излаз:
// име: Јован
// старост: 30

У горњем примеру, Објецт.ентриес (корисник) враћа низ парова кључ-вредност, које свака итерација затим деструктурира у променљиве кључ и вредност.

10. Арраи.индекОф Скраћеница Коришћење оператора битова

Можете заменити позиве на Арраи.индекОф метода са стенографијом користећи битни оператор ~ да провери да ли елемент постоји у низу. Скраћеница враћа индекс елемента ако је пронађен или -1 ако се не нађе.

Размотрите следећи пример:

конст бројеви = [1, 2, 3];
конст индекс = ~бројеви.индекОф(2);
конзола.лог (индекс); // Излаз: -2

У горњем примеру, ~нумберс.индекОф (2) враћа -2 јер 2 је на индек 1, а битни оператор негира индекс.

11. Пребацивање вредности на Боолеан Витх!!

До експлицитно претворити вредност за боолеан, можете користити оператор двоструке негације (!!). Он ефективно претвара истиниту вредност у истина и лажну вредност за лажно.

Размотрите следећи пример:

конст вредност1 = "Здраво";
конст вредност2 = "";
конзола.лог(!!валуе1); // Излаз: истина
конзола.лог(!!валуе2); // Излаз: фалсе

У горњем примеру, !!валуе1 враћа истина јер низ Здраво је истина, док !!валуе2 враћа лажно јер је празан низ лажан.

Ефикасност и читљивост откључавања кода

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

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