• 首页 Home
  • 简介 About
  • 项目 Service
  • 案例 Cases
  • 新闻 News
  • 技术文章 本硕新闻 行业资讯

    [javascript]声明变量的三种方式和区别

    发表时间:2019-02-25  热度:

    1.const 常量的值不能通过重新赋值来改变,并且不能重新声明。

    const number  = 2;//正确

    之后若尝试改变number是不可以行的。

    try {

      number = 3;

    } catch(err) {

      console.log(err);

      // expected output: TypeError: invalid assignment to const `number'

      // Note - error messages will vary depending on browser

    }

    console.log(number);

    // expected output: 2

    最后的结果会是

    TypeError: Assignment to constant variable.

    42

    2.var 变量声明,可以修改,如果不初始化会输出undefined,不会报错。

    var a = 0, b = 0;//初始化声明两个变量。

    注意:var a = b = 0;//这里输出a和b和上方是一样的,但是如果在局部声明时,b将变成全局变量。

    例如:

    function test(){

    var a = b = 0;

    }

    test();

    console.log(a);//a is not defined

    console.log(b);//输出0

    3.let 语句声明一个块级作用域的变量,函数内部使用let定义后,对函数外部无影响。

    使用var声明:

    function varTest() {

      var x = 1;

      if (true) {

        var x = 2;  // 同样的变量!

        console.log(x);  // 2

      }

      console.log(x);  // 2

    }

    使用let声明:

    function letTest() {

      let x = 1;

      if (true) {

        let x = 2;  // 不同的变量

        console.log(x);  // 2

      }

      console.log(x);  // 1

    }

     

    文章怎么样?
    相关资讯