В этом разделе мы обсудим 3 способа объявления переменной в javascript.
//Original, function scope var foo = “Hello world” // Similar to var, block scope let foo = “Hello world” // Cannot be re-assigned const foo = “Hello world”
вар
переменная var имеет область действия, что означает, что она будет доступна во всей функции, см. пример ниже.
Как вы видите выше, мы создали переменную var сразу после функции в строке 1, а затем есть блок if, а внутри блока if мы снова использовали переменную ‘a’.
Если вы видите console.log в строках 6 и 8, вы можете увидеть, что вывод равен 3, потому что переменная var может быть доступна из любой точки функции. И он рассматривает «var a» в строках 2 и 5 как 1 переменную.
позволять
переменная let имеет область действия блока, что означает, что она будет доступна только внутри блока, см. пример ниже
Как вы видите выше, мы создали переменную let сразу после функции в строке 1, а затем есть блок if, а внутри блока if мы снова использовали ‘let a = 1+2’.
Если вы видите console.log в строке 6, вы можете увидеть выход 3 внутри блока if, но в строке 8 вывод равен 1потому что let имеет блочную область действия. И он рассматривает «let a» в строках 2 и 5 как две разные переменные. Поэтому переменная IF блока 'a' будет доступна только внутри IF STATEMENT и FUNCTION 'a' будет доступна только внутри FUNCTION STATEMENT. Он не будет повторно использоваться в дочерней или родительской области.
константа
Означает, что идентификатор нельзя переназначить. но не путайте с неизменяемыми значениями, посколькуобъект `const` может иметь измененные свойства .
const language = “English”; language = “Arabic”; console.log(language); // Output: English
Как видите, мы не можем изменить const в приведенном выше примере. Где как мы можем изменить константные свойства объекта изменяемые.
const foo = { name : “Asad”, address : { permanent : “Dubai” } } foo.address.permanent = “USA”; console.log(foo.address.permanent); // Output: USA
Ну, не путайте с объектом.
Вывод
‘const’ означает, что идентификатор не будет переназначаться.
‘let’ означает, что идентификатор может быть переназначен, но только в блоках, в которых он определен.
‘var’ означает, что идентификатор можно переназначить и использовать в любом месте функции.
Если статья показалась вам интересной, нажмите кнопку ♡. Это заставляет меня писать больше в таком духе.