PROG_WAY_BLOG Telegram 95
Function expression vs Function declaration.

В JavaScript объявить функцию можно по разному. Различают два способа, давайте рассмотрим их на примере функции сложения двух чисел:

Function declaration:

function sum(a, b) {
return a + b
}


Function expression:

const sum = function sum(a, b) { return a + b }

или с использованием синтаксиса стрелочной функции:

const sum = (a, b) => a + b


Функционал одинаковый, все функции вернут одинаковый результат при одинаковых входных данных. Но есть разница. Все функции, объявленные через Function declaration инициализируются еще до выполнения кода. Это значит, что нам не важно где функция объявлена. Вызвать её можно в любой момент, даже до фактического объявления в коде:

sum(2, 7) // 9

function sum(a, b) {
return a + b
}


С функциями объявленными через Function expression так не получится, ведь механизм объявления такой функции идентичен механизму объявления переменной:


sum(2, 7) // ReferenceError: sum is not defined

const sum = function sum(a, b) { return a + b }


В этом основная разница 🙂
Спасибо за прочтение, это важно для меня.

#javascript
1



tgoop.com/prog_way_blog/95
Create:
Last Update:

Function expression vs Function declaration.

В JavaScript объявить функцию можно по разному. Различают два способа, давайте рассмотрим их на примере функции сложения двух чисел:

Function declaration:


function sum(a, b) {
return a + b
}


Function expression:

const sum = function sum(a, b) { return a + b }

или с использованием синтаксиса стрелочной функции:

const sum = (a, b) => a + b


Функционал одинаковый, все функции вернут одинаковый результат при одинаковых входных данных. Но есть разница. Все функции, объявленные через Function declaration инициализируются еще до выполнения кода. Это значит, что нам не важно где функция объявлена. Вызвать её можно в любой момент, даже до фактического объявления в коде:

sum(2, 7) // 9

function sum(a, b) {
return a + b
}


С функциями объявленными через Function expression так не получится, ведь механизм объявления такой функции идентичен механизму объявления переменной:


sum(2, 7) // ReferenceError: sum is not defined

const sum = function sum(a, b) { return a + b }


В этом основная разница 🙂
Спасибо за прочтение, это важно для меня.

#javascript

BY progway — программирование, IT




Share with your friend now:
tgoop.com/prog_way_blog/95

View MORE
Open in Telegram


Telegram News

Date: |

Commenting about the court's concerns about the spread of false information related to the elections, Minister Fachin noted Brazil is "facing circumstances that could put Brazil's democracy at risk." During the meeting, the information technology secretary at the TSE, Julio Valente, put forward a list of requests the court believes will disinformation. How to Create a Private or Public Channel on Telegram? A vandalised bank during the 2019 protest. File photo: May James/HKFP. Content is editable within two days of publishing How to Create a Private or Public Channel on Telegram?
from us


Telegram progway — программирование, IT
FROM American