在JavaScript中,var
和not var
是关于变量声明的两种方式。
var
声明:使用var
关键字声明的变量是函数作用域的,即在声明的函数内部有效。如果在函数内部使用var
声明变量,该变量将成为函数的局部变量,只在函数内部可见。如果在函数外部使用var
声明变量,该变量将成为全局变量,可以在整个脚本中访问。not var
声明:在ES6之后,可以使用let
和const
关键字来声明变量。这种声明方式是块级作用域的,即在声明的块级作用域内有效。块级作用域可以是函数、循环、条件语句等。使用let
声明的变量具有块级作用域,只在声明的块级作用域内有效。使用const
声明的变量也具有块级作用域,但其值是常量,不能被重新赋值。区别:
var
声明的变量是函数作用域的,而let
和const
声明的变量是块级作用域的。var
声明的变量会发生变量提升,即在声明之前就可以访问变量,但其值为undefined
。而使用let
和const
声明的变量不会发生变量提升,必须在声明之后才能访问变量。var
可以重复声明同一个变量,而使用let
和const
不允许在同一个作用域内重复声明同一个变量。应用场景:
var
适用于需要在函数内部定义局部变量或在全局范围内定义全局变量的情况。let
适用于需要在块级作用域内定义变量,并且不需要重新赋值的情况。const
适用于需要在块级作用域内定义常量的情况,常量的值不能被修改。腾讯云相关产品和产品介绍链接地址:
领取专属 10元无门槛券
手把手带您无忧上云