javascript中的var

Posted 低代码布道师

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了javascript中的var相关的知识,希望对你有一定的参考价值。

在js中要特别注意,如果是旧代码,变量的定义是使用var,使用该关键字定义变量会有两种作用域,一种是全局作用域,一种是函数作用域
1、全局作用域

if (true) 
  var test = true; // use "var" instead of "let"


alert(test); // true, the variable lives after if

2、函数作用域

function sayHi() 
  if (true) 
    var phrase = "Hello";
  

  alert(phrase); // works


sayHi();
alert(phrase); // ReferenceError: phrase is not defined

3.变量提升
特别要注意的是var会导致变量提升,总是将变量定义提升到头部执行,但是赋值却是在对应的位置执行

function sayHi() 
  alert(phrase);

  var phrase = "Hello";


sayHi();

因为变量提升的原因,alert不好报错,但是会提示undefined

以上是关于javascript中的var的主要内容,如果未能解决你的问题,请参考以下文章

48个值得掌握的JavaScript代码片段(上)

JavaScript 代码片段

你可能不知道的JavaScript代码片段和技巧(下)

你可能不知道的JavaScript代码片段和技巧(上)

JavaScript中的slice函数

VSCode自定义代码片段——JS中的面向对象编程