ЈаваСцрипт стрелице могу вас учинити бољим програмерима

ЈаваСцрипт стрелице могу вас учинити бољим програмерима

ЈаваСцрипт ЕС6 је унео узбудљиве промене у свет веб развоја. Нови додаци језику ЈаваСцрипт донели су нове могућности.





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





Функције стрелица захтевају мало прилагођавања ако сте стручњак за традиционалне ЈаваСцрипт функције. Хајде да погледамо шта су то, како функционишу и како вам користе.





Шта су ЈаваСцрипт стрелице?

Функције стрелица су нови начин писања израза функција који су били укључено у издање ЈаваСцрипт ЕС6 . Слични су изразима ЈаваСцрипт функција које сте користили, са неким мало другачијим правилима.

Функције стрелица су увек анонимне функције, имају различита правила за



this

, и имају једноставнију синтаксу од традиционалних функција.

која је моја ИП адреса мог телефона

Ове функције користе нови токен стрелице:





=>

Ако сте икада радили у Питхону, ове функције су врло сличне Питхон Ламбда изрази .

Синтакса ових функција је мало чистија од нормалних функција. Имајте на уму неколико нових правила:





  • Кључна реч фунцтион је уклоњена
  • Кључна реч ретурн није обавезна
  • Коврчаве заграде су опционалне

Постоји много малих промена које треба прећи, па почнимо са основним поређењем израза функција.

Како се користе функције стрелица

Функције стрелица су једноставне за употребу. Разумевање функција стрелица је лакше ако се упореде упоредо са традиционалним изразима функција.

Ево израза функције који додаје два броја; прво користећи традиционални метод функције:

let addnum = function(num1,num2){
return num1 + num2;
};
addnum(1,2);
>>3

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

Ево израза промењеног у функцију стрелице:

let addnum = (num1,num2) => { return num1 + num2;};
addnum(1,2);
>>3

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

Витичасте заграде и кључна реч ретурн још увек постоје. Ово су опционалне функције са стрелицама. Ево још једноставнијег примера исте функције:

let addnum = (num1,num2) => num1 + num2;

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

Постоји још много функција стрелица. заронимо дубље како бисте боље осетили шта они могу учинити.

Карактеристике функције стрелице

Функције стрелица имају много различитих употреба и функција.

нека Виндовс 10 изгледа као линук

Регулар Фунцтионс

Функције стрелица могу користити један или више аргумената. Ако користите два или више аргумената, морате их ставити у заграде. Ако имате само један аргумент, не морате да користите заграде.

let square = x => x * x
square(2);
>>4

Функције стрелица се могу користити без аргумената. Ако не користите аргументе у својој функцији, морате користити празне заграде.

let helloFunction = () => Console.log('Hello reader!');
helloFunction();
>>Hello reader!

Једноставне функције попут ових користе много мање кода. Замислите колико је комплекс лакши пројекат попут ЈаваСцрипт пројекције слајдова постаје када имате једноставнији начин писања функција.

Користећи ово

Концепт

this

има тенденцију да буде најтежи део коришћења ЈаваСцрипт -а. Функције стрелица чине

this

лакши за употребу.

Када користите функције стрелица

this

ће бити дефинисана оградном функцијом. Ово може створити проблеме који настају када креирате угнијежђене функције и потребе

this

да се примени на вашу главну функцију

Ево популарног примера који приказује заобилазно решење које морате да користите са редовним функцијама.

function Person() {
var that = this; //You have to assign 'this' to a new variable
that.age = 0;
setInterval(function growUp() {
that.age++;
}, 1000);
}

Додела вредности

this

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

function Person(){
this.age = 0;
setInterval(() => {
this.age++; // Now you can use 'this' without a new variable declared
}, 1000);
}

Иако су одличне за функције, не треба их користити за креирање метода унутар објекта. Функције стрелица не користе прави опсег за

this

.

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

како укључити режим авиона на мац -у
let pizza = {
toppings: 5,
removeToppings: () => {
this.toppings--;
}
}
//A pizza object with 5 toppings
>pizza
>>{toppings: 5, removeToppings: f}
pizza.removeToppings(); //The method will not do anything to the object
>pizza
>>{toppings: 5, removeToppings: f} //Still has 5 toppings

Рад са низовима

Помоћу функција са стрелицама можете поједноставити код који се користи за рад са методама низа. Низови и методе низа су веома важни делови ЈаваСцрипт -а па ћете их много користити.

Постоје неке корисне методе попут Мапа метод који покреће функцију на свим елементима низа и враћа нови низ.

let myArray = [1,2,3,4];
myArray.map(function(element){
return element + 1;
});
>> [2,3,4,5]

Ово је прилично једноставна функција која додаје једну свакој вредности у низу. Исту функцију можете написати са мање кода помоћу функције стрелице.

let myArray = [1,2,3,4];
myArray.map(element => {
return element + 1;
});
>> [2,3,4,5]

Сада је много лакше читати.

Креирање литералних објеката

Функције стрелица се могу користити за креирање литерала објеката у ЈаваСцрипт -у. Регуларне функције их могу створити, али су мало дуже.

let createObject = function createName(first,last) {
return {
first: first,
last: last
};
};

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

let createArrowObject = (first,last) => ({first:first, last:last});

ЈаваСцрипт стрелице и даље

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

this

, олакшавају стварање објеката и дају вам нови начин рада са методама низа.

Увођење функција стрелица, заједно са многим другим функцијама, у ЈаваСцрипту ЕС6 показује колико је ЈаваСцрипт постао важан у веб развоју. Ипак, постоји још много тога што можете учинити.

Желите да сазнате више о ЈаваСцрипт -у? Научите ове ЈаваСцрипт оквире. Плус, наш ЈаваСцрипт варалица пружа драгоцене информације и сазнаје више о томе како ЈаваСцрипт функционише може вас учинити бољим програмером.

Објави Објави Твеет Емаил 6 звучних алтернатива: најбоље бесплатне или јефтине апликације за аудио књиге

Ако не волите да плаћате аудио књиге, ево неколико сјајних апликација које вам омогућавају да их бесплатно и легално слушате.

Прочитајте следеће
Повезане теме
  • Програмирање
  • ЈаваСцрипт
О аутору Антхони Грант(Објављено 40 чланака)

Антхони Грант је слободни писац који се бави програмирањем и софтвером. Он се бави рачунарством и бави се програмирањем, Екцелом, софтвером и технологијом.

Више од Антхонија Гранта

Претплатите се на наш билтен

Придружите се нашем билтену за техничке савете, критике, бесплатне е -књиге и ексклузивне понуде!

Кликните овде да бисте се претплатили