美文网首页
我读ES6--变量声明

我读ES6--变量声明

作者: 叫我徐小星 | 来源:发表于2018-10-09 08:27 被阅读5次
1.关于var和let、const

let、const与var一样,都是用来声明变量,但都有其特殊的用途。
let 、const作用域在{}之间,重复使用let、const会报错、定义之前不能使用
const只能赋值一次 且只能声明的时候赋值,如const a=1;

以下一段用var声明:

var x = 'outer';
function test(inner) {
  if (inner) {
    var x = 'inner';
    return x;
  }
  return x;
}
test(false); //undefined
test(true); //"inner"

我们知道,函数中由于变量提升,所以test(false)的值是undefined;

以下一段用let声明:

let x = 'outer';
function test(inner) {
  if (inner) {
    let x = 'inner';
    return x;
  }
  return x;
}
test(false);//"outer"
test(true);//"inner"

现在if前面也定义一个x变量,如下:

let x = 'outer';
function test(inner) {
  let x='mid';
  if (inner) {
    let x = 'inner';
    return x;
  }
  return x;
}
test(false);//"mid"
test(true);//"inner"

由上可知:let为块作用域,不会像var一样变量提升。

const:对于不希望被改变的常量,则可用const声明,如:

const x = 'a';

后面再给x赋值将会报错。

2.关于箭头函数

箭头函数的产生:弱化this的用法

相关文章

  • 我读ES6--变量声明

    1.关于var和let、const let、const与var一样,都是用来声明变量,但都有其特殊的用途。let ...

  • Kotlin学习1

    1声明变量和内置数据类型 2只读变量 要声明可修改变量,使用var关键字要声明只读变量,使用val关键字 val ...

  • swift和OC混编的坑

    在swift 中的类变量声明Int类型时不能是Int?,否则在OC中读不出这个变量.如果声明Int变量同时赋值就可以.

  • 深入理解ES6--解构

    深入理解ES6--解构

  • 变量 声明

    let:块儿级作用域,同一作用域内,不许声明同一个变量,不能在函数内部重新声明参数,允许块儿级作用域随意嵌套ES6...

  • $ 变量声明

    声明变量的符号“$”变量名称赋予变量的值 声明了变量之后,就可以在作用域内直接调用了。

  • 变量声明

    我们要使用盒子装东西,是不是先要找到盒子,那在编程中,这个过程叫声明变量,找盒子的动作,如何表示: 声明变量语法:...

  • 变量声明

    1、变量声明 上面这段代码声明了一个类型为string的变量name。对于string类型的变量,声明之后没有赋值...

  • 变量声明

    var声明 主要特点:var是函数作用域,只针对函数声明可以多次声明同一个变量不会报错捕获变量怪异之处 let声明...

  • 变量声明

    es6声明变量的六种方法: var,function,let,const, class, import let...

网友评论

      本文标题:我读ES6--变量声明

      本文链接:https://www.haomeiwen.com/subject/gtpwbttx.html