Рубрики
Без рубрики

var vs Let vs const

Введение Let, Var и Const – это способы создания новой переменной в JavaScript. Перед ES … с меткой JavaScript, начинающие.

Введение

Пусть, var и const – это способы создания новой переменной в JavaScript. Перед ES2015 (или ES6) был доступен только VAR, который обеспечивал ограниченные возможности для общего пользования. Пусть и const были введены в ES6.

В JS есть две области, называемые глобальной областью объема и функции. Глобальная переменная прицела доступна повсюду, тогда как переменная сфера функций доступна только внутри объявления функции.

«В JavaScript переменные инициализируются со значением неопределенных, когда они созданы». Интерпретатор JavaScript назначит переменные объявления по умолчанию значение не определенного во время того, что называется фазой «Создание».

вар

Для VAR не имеет значения, где он объявляется первым внутри функции. Фаза создания произойдет перед чем -либо, а объявление VAR присвоит значение «неопределенным» до инициализации. (Подумайте о каждом VAR в декларации функции и объявлено как незначенным на первой строке.)

function app() {
  console.log(declare); //undefined
  console.log(i); //undefined

  var declare;
  declare  = "initialize";

  for(var i = 0; i < 5; i++){
    var sum = i;
  }

  console.log(declare); //initialize
  console.log(i); //5
  console.log(sum); //4
}

app();

Уведомление, объявлению было назначено значение по умолчанию, и доступно даже до объявления. Для переменной I и SUM их значения доступны вне цикла, так как VAR имеет функциональную область, а не блок. (Помните каждую VAR в функции, которая появляется на первой строке);

Кроме того, я не думаю, что это хорошая практика для доступа к переменной, прежде чем объявлять, как это может привести к неизвестным вопросам.

Чтобы решить проблему, пусть и const были введены в ES6.

позволять

Пусть блокируется, а не функциональная зона, как в случае VAR. Блок Объем в большинстве простых терминов означает внутри {} и ниже вложенного кода. Переменные, объявленные с использованием let, не доступны до объявления. Представьте себе, что вы делаете коробку, начиная с объявления Let Till, соответствующего закрывающему кронштейну.

function app() {
  console.log(declare); //undefined
  console.log(i); //ReferenceError: i is not defined

  var declare;
  declare  = "initialize";

  for(let i = 0; i < 5; i++){
    let sum = i;
  }

  console.log(declare); //initialize
  // console.log(i);

}

app();

Поскольку мы пытались получить доступ к переменной, я, прежде чем объявить, что он бросает ссылочную ошибку, противоположную делу с переменными, объявленными с использованием VAR. Эта разница происходит из -за разницы в объеме let и var.

function app() {
  console.log(declare); //undefined

  var declare;
  declare  = "initialize";

  for(let i = 0; i < 5; i++){
    let sum = i;
  }

  console.log(declare); //initialize
  console.log(i); //ReferenceError: i is not defined

}

app();

Уведомление, переменная I доступна только внутри для цикла. За пределами своего блока, он бросает эталонную ошибку, не определяемой.

констант

Const почти похожа на то, что только разница в том, что она не может быть переназначена.

let firstName = "vaibhav";
const secondName = "aggarwal";

firstName = "changeMyName";
secondName = "youCantChangeMyName"; //TypeError: Assignment to constant variable.

Не путайте, назначенные с изменениями. Его свойства могут быть изменены, и только ограничение на переназначение.

const name = {
  firstName: "vaibhav",
  secondName: "aggarwal"
}

console.log(name);

name.firstName = "changeMyName";

console.log(name); 
// {
//   firstName: "changeMyName",
//   secondName: "aggarwal"
// }

name = {}; //TypeError: Assignment to constant variable.

Есть много важных понятий, таких как объем, подъем и т. Д. Я пытался объяснить простыми терминами для лучшего понимания.

Ссылка

  1. https://developer.mozilla.org/en-US/docs/Web/JavaScript/Guide

Оригинал: “https://dev.to/alakazam03/var-vs-let-vs-const-4ki1”